VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
DtVrfObjectPredicate Class Referenceabstract

Contains the DtVrfObjectPredicate class declaration.

Instances of DtVrfObjectPredicate are used to evaluate a condition, given a DtVrfObject as an argument.

Inheritance diagram for DtVrfObjectPredicate:
Inheritance graph
[legend]

Public Member Functions

 DtVrfObjectPredicate (bool negate=false)
 
virtual ~DtVrfObjectPredicate ()
 
 DtVrfObjectPredicate (const DtVrfObjectPredicate &orig)
 
DtVrfObjectPredicateoperator= (const DtVrfObjectPredicate &orig)
 
virtual DtVrfObjectPredicateclone () const =0
 
bool operator== (const DtVrfObjectPredicate &orig) const
 
bool operator!= (const DtVrfObjectPredicate &orig) const
 
virtual bool negated () const
 
virtual void setNegate (bool negate)
 
bool isTrue (const DtSimObject *vrfObject) const
 
virtual bool canBeTrue (const DtSimObject *vrfObject)
 
virtual bool canBeFalse (const DtSimObject *vrfObject)
 
virtual void stringRep (std::ostream &str, int indentLevel=0) const
 

Static Public Member Functions

static const DtVrfObjectPredicatenullPredicate ()
 

Protected Member Functions

virtual bool eval (const DtSimObject *vrfObject) const =0
 
virtual bool predicateEqual (const DtVrfObjectPredicate &orig) const
 
virtual bool canEvalTrue (const DtSimObject *vrfObject) const
 
virtual bool canEvalFalse (const DtSimObject *vrfObject) const
 
virtual void typeSpecificStringRep (std::ostream &str, int indentLevel) const
 

Protected Attributes

bool myNegated
 

Constructor & Destructor Documentation

DtVrfObjectPredicate::DtVrfObjectPredicate ( bool  negate = false)

constructor

virtual DtVrfObjectPredicate::~DtVrfObjectPredicate ( )
virtual

destructor

DtVrfObjectPredicate::DtVrfObjectPredicate ( const DtVrfObjectPredicate orig)

copy constructor

Member Function Documentation

DtVrfObjectPredicate& DtVrfObjectPredicate::operator= ( const DtVrfObjectPredicate orig)

assignment operator

virtual DtVrfObjectPredicate* DtVrfObjectPredicate::clone ( ) const
pure virtual
bool DtVrfObjectPredicate::operator== ( const DtVrfObjectPredicate orig) const

Equality operators used to compare predicates. Do not attempt to override these. Override predicateEqual() so that the negate functionality can be correctly considered.

bool DtVrfObjectPredicate::operator!= ( const DtVrfObjectPredicate orig) const
virtual bool DtVrfObjectPredicate::negated ( ) const
virtual
virtual void DtVrfObjectPredicate::setNegate ( bool  negate)
virtual
bool DtVrfObjectPredicate::isTrue ( const DtSimObject vrfObject) const

This function evaluates the eval function (to be defined in derived classes) given a DtSimObject and returns the result, negated if indicated.

virtual bool DtVrfObjectPredicate::canBeTrue ( const DtSimObject vrfObject)
virtual
Returns
True if this predicate can return true in any cases.
virtual bool DtVrfObjectPredicate::canBeFalse ( const DtSimObject vrfObject)
virtual
Returns
True if this predicate can return false in any cases.
virtual void DtVrfObjectPredicate::stringRep ( std::ostream &  str,
int  indentLevel = 0 
) const
virtual
static const DtVrfObjectPredicate& DtVrfObjectPredicate::nullPredicate ( )
static

Returns an instance of a DtNullVrfObjectPredicate.

virtual bool DtVrfObjectPredicate::eval ( const DtSimObject vrfObject) const
protectedpure virtual
virtual bool DtVrfObjectPredicate::predicateEqual ( const DtVrfObjectPredicate orig) const
protectedvirtual

Test if this instance of a predicate is equal to another. The callback mechanisms need this to function correctly. Override predicateEqual() when creating a concrete predicate to test any parameters of the predicate. Be sure to call down to the base class implementation to check if the predicates are of the same type and their negated flags are equal. Derived predicates with no parameters do not need to implement this method.

Returns
True when the predicates are of the same type (using typeid())and their negated flags are equal.

Reimplemented in DtObjecKindLE, DtForceTypePredicate, DtCompositePredicate, DtEchelonIdChangedPredicate, DtObjectTypeEqualPredicate, DtOverlayLayersPredicate, DtFilterFunctionPredicate, and DtEngineeringObjEffectivePredicate.

virtual bool DtVrfObjectPredicate::canEvalTrue ( const DtSimObject vrfObject) const
inlineprotectedvirtual
Returns
true if this predicate's eval() function can ever return true. If predicate subclass tests a static property of an object, override this function to return appropriately.

Reimplemented in DtCompositePredicate, DtObjectTypeEqualPredicate, and DtOverlayLayersPredicate.

virtual bool DtVrfObjectPredicate::canEvalFalse ( const DtSimObject vrfObject) const
inlineprotectedvirtual
Returns
true if this predicate's eval() function can ever return false. If predicate subclass tests a static property of an object, override this function to return appropriately.

Reimplemented in DtCompositePredicate, DtObjectTypeEqualPredicate, and DtOverlayLayersPredicate.

virtual void DtVrfObjectPredicate::typeSpecificStringRep ( std::ostream &  str,
int  indentLevel 
) const
protectedvirtual

Override in specific subclasses to print the predicate description to the stream.

Reimplemented in DtObjecKindLE, DtCompositePredicate, DtForceTypePredicate, DtObjectTypeEqualPredicate, DtOverlayLayersPredicate, DtFilterFunctionPredicate, and DtDestroyedPredicate.

Member Data Documentation

bool DtVrfObjectPredicate::myNegated
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)