Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

LogicalExprBase.h

Go to the documentation of this file.
00001 #ifndef LOGICALEXPRBASE_H
00002 #define LOGICALEXPRBASE_H
00003 
00004 #include "SundanceDefs.h"
00005 #include "XMLObject.h"
00006 #include "Cell.h"
00007 
00008 namespace Sundance
00009 {
00010 
00011   using namespace TSF;
00012   using std::string;
00013 
00014   using std::ostream;
00015 
00016   class LogicalExpr;
00017 
00018   /**
00019    * \ingroup LowLevelSymbolics
00020    */
00021 
00022   class LogicalExprBase
00023     {
00024     public:
00025       /** */
00026       LogicalExprBase(){;}
00027 
00028       /** TUVD */
00029       virtual ~LogicalExprBase(){;}
00030 
00031       /** */
00032       virtual bool evaluate(const Cell& cell) const = 0 ;
00033 
00034       /** write to XML form */
00035       virtual XMLObject toXML() const = 0 ;
00036 
00037       /** test equality between expressions */
00038       virtual bool equals(const LogicalExpr& other) const = 0 ;
00039 
00040       /** test ordering of two logical expressions */
00041       virtual bool lessThan(const LogicalExpr& other) const = 0 ;
00042     private:
00043     };
00044 
00045 
00046 
00047 
00048 
00049 }
00050 #endif

Contact:
Kevin Long (krlong@ca.sandia.gov)


Documentation generated by