Parser.h

00001 
00004 #ifndef _Parser_h
00005 #define _Parser_h
00006 
00007 // SYSTEM INCLUDES
00008 //
00009 
00010 // PROJECT INCLUDES
00011 //
00012 
00013 // LOCAL INCLUDES
00014 //
00015 #include "FunctionBase.h"
00016 #include "ParseError.h"
00017 #include "VariableNames.h"
00018 
00019 // FORWARD REFERENCES
00020 //
00021 
00022 
00023 class Parser
00024 {
00025 public:
00026 // LIFECYCLE
00027 
00030     Parser(void);
00031 
00034     virtual ~Parser(void);
00035 
00036 
00037 // OPERATORS
00038 
00039 // OPERATIONS
00040 
00052     virtual std::auto_ptr<FunctionBase> CreateFunction(
00053                                                 const wxString& input,
00054                                                 VariableNames&  rVariables,
00055                                                 bool            resetVariables)
00056                                         const throw(ParseError) = 0;
00057 
00058 // ACCESS
00059 // INQUIRY
00060 
00062     static double   OperatorAdd(double a, double b);
00064     static double   OperatorSubtract(double a, double b);
00066     static double   OperatorMultiply(double a, double b);
00068     static double   OperatorDivide(double a, double b);
00070     static double   OperatorNegate(double a);
00071 protected:
00072 private:
00073 };
00074 
00075 // INLINE METHODS
00076 //
00077 
00078 // EXTERNAL REFERENCES
00079 //
00080 
00081 #endif  // _Parser_h

Wygenerowano Fri Sep 29 21:04:48 2006 dla EduOptim2 programem  doxygen 1.4.6