![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: compositePred.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef compositePred_H_ 00009 #define compositePred_H_ 00010 00013 00015 00016 #include "vrfobjcore/vrfObjPred.h" 00017 #include <vlpi/disEnums.h> 00018 #include <vlutil/vlHashlist.h> 00019 00025 #include "vrfobjcore/vrfobjcoreDefines.h" 00026 class DT_DLL_vrfobjcore DtCompositePredicate : public DtVrfObjectPredicate 00027 { 00028 public: 00029 00031 DtCompositePredicate(bool negate = false); 00032 00034 virtual ~DtCompositePredicate(); 00035 00037 DtCompositePredicate(const DtCompositePredicate& orig); 00038 00040 DtCompositePredicate& operator=( 00041 const DtCompositePredicate& orig); 00042 00044 virtual DtVrfObjectPredicate* clone() const; 00045 00047 virtual void addPredicate(const DtVrfObjectPredicate& predicate); 00048 00050 virtual void removePredicate(const DtVrfObjectPredicate& predicate); 00051 00053 virtual bool hasPredicate(const DtVrfObjectPredicate& predicate) const; 00054 00055 protected: 00056 00058 virtual bool eval(const DtVrfObject* object); 00059 00061 virtual bool predicateEqual(const DtVrfObjectPredicate& orig) const; 00062 00063 00064 protected: 00065 00066 DtList myPredicates; 00067 }; 00068 00069 #endif