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

LogicalExpr.h

Go to the documentation of this file.
00001 #ifndef LOGICALEXPR_H
00002 #define LOGICALEXPR_H
00003 
00004 #include "SundanceDefs.h"
00005 
00006 #include "LogicalExprBase.h"
00007 #include "DenseSerialVector.h"
00008 
00009 
00010 namespace Sundance
00011 {
00012 
00013   using namespace TSF;
00014   using std::string;
00015 
00016   using std::ostream;
00017 
00018 
00019   /**
00020    * \ingroup LowLevelSymbolics
00021    */
00022 
00023   class LogicalExpr
00024     {
00025     public:
00026       LogicalExpr(LogicalExprBase* ptr);
00027 
00028       LogicalExpr operator&&(const LogicalExpr& other) const ;
00029 
00030       LogicalExpr operator||(const LogicalExpr& other) const ;
00031 
00032       LogicalExpr operator!() const ;
00033 
00034       bool operator==(const LogicalExpr& other) const ;
00035 
00036       /** */
00037       bool evaluate(const Cell& cell) const ;
00038 
00039       /** write to XML form */
00040       XMLObject toXML() const ;
00041 
00042       const LogicalExprBase* ptr() const {return &(*ptr_);}
00043 
00044       /** */
00045       bool lessThan(const LogicalExpr& other) const ;
00046     private:
00047       TSFSmartPtr<LogicalExprBase> ptr_;
00048     };
00049 
00050 
00051 
00052 
00053 
00054 }
00055 #endif
00056 
00057 
00058 
00059 
00060 

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


Documentation generated by