VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes
DtManagedObjectList Class Reference

Instances of DtManagedObjectList are created and maintained by a DtManagedObjectListManager. More...

Public Types

typedef std::list< DtVrfObject * >
::iterator 
iterator
typedef std::list< DtVrfObject * >
::const_iterator 
const_iterator

Public Member Functions

virtual ~DtManagedObjectList ()
 Destructor.
virtual const
DtVrfObjectPredicate
predicate () const
 Returns the predicate which determines membership in the list.
virtual bool reevaluateFlag () const
 Returns true if this list get reevaluated.
virtual DtTime evaluationPeriod () const
 Returns the evaluation interval.
virtual DtVrfObjectfind (const DtEntityIdentifier &entityId) const
virtual void invalidate ()
 Clears out all objects on the list and sets the local object manager pointer to NULL.
virtual iterator begin ()
 Calls down to the corresponding method from contained myFilteredObjectList.
virtual const_iterator begin () const
virtual iterator end ()
virtual const_iterator end () const
virtual size_t size () const

Static Public Member Functions

static DtManagedObjectListPtr create (DtVrfObjectManager *objectManager, const DtVrfObjectPredicate &predicate=DtVrfObjectPredicate::nullPredicate(), bool reevaluatePeriodically=false, DtTime evaluationPeriod=0.0)
 Calls constructor and init().
static DtManagedObjectListPtr nullList ()

Protected Member Functions

 DtManagedObjectList (DtVrfObjectManager *objectManager, const DtVrfObjectPredicate &predicate=DtVrfObjectPredicate::nullPredicate(), bool reevaluateFlag=false, DtTime evaluationPeriod=0)
 Constructor Protected to control creation.
virtual void init ()
 Initializer; called by create() after construction.
 DtManagedObjectList ()
virtual void add (DtVrfObject *obj)
virtual void remove (DtVrfObject *obj)
virtual void populateList ()
 Sets up the list with initial contents based on predicate.
virtual void processObjectAdded (DtVrfObject *vrfObject)
virtual void processObjectRemoved (DtVrfObject *vrfObject)
virtual void processPredicateCallback (DtVrfObject *vrfObject, DtVrfObjectPredicateEvaluator *predicateEval)

Static Protected Member Functions

static void objectAddedCallback (DtVrfObject *vrfObject, void *usr)
 Object Manager callbacks.
static void objectRemovedCallback (DtVrfObject *vrfObject, void *usr)
static void predicateCallback (DtVrfObject *vrfObject, DtVrfObjectPredicateEvaluator *predicateEval, void *userData)
 Object predicate callbacks.

Protected Attributes

DtVrfObjectManagermyObjectManager
DtVrfObjectPredicatemyPredicate
DtVrfObjectPredicatemyNegatedPredicate
bool myReevaluateFlag
DtTime myEvaluationPeriod
std::list< DtVrfObject * > myFilteredObjectList

Private Member Functions

 DtManagedObjectList (DtManagedObjectList &orig)
 Not implemented.
DtManagedObjectListoperator= (DtManagedObjectList &orig)

Detailed Description

Instances of DtManagedObjectList are created and maintained by a DtManagedObjectListManager.

The lists contains a subset of the objects in DtVrfObjectManager that meet the specified predicate. If specified at creation time, the list automatically updates itself periodically. The lists should be handled though shared pointers.

Member Typedef Documentation

Constructor & Destructor Documentation

DtManagedObjectList::DtManagedObjectList ( DtManagedObjectList orig)
private

Not implemented.

DtManagedObjectList::DtManagedObjectList ( DtVrfObjectManager objectManager,
const DtVrfObjectPredicate predicate = DtVrfObjectPredicate::nullPredicate(),
bool  reevaluateFlag = false,
DtTime  evaluationPeriod = 0 
)
protected

Constructor Protected to control creation.

Call create() instead.

DtManagedObjectList::DtManagedObjectList ( )
protected
virtual DtManagedObjectList::~DtManagedObjectList ( )
virtual

Destructor.

Member Function Documentation

DtManagedObjectList& DtManagedObjectList::operator= ( DtManagedObjectList orig)
private
virtual void DtManagedObjectList::init ( )
protectedvirtual

Initializer; called by create() after construction.

static DtManagedObjectListPtr DtManagedObjectList::create ( DtVrfObjectManager objectManager,
const DtVrfObjectPredicate predicate = DtVrfObjectPredicate::nullPredicate(),
bool  reevaluatePeriodically = false,
DtTime  evaluationPeriod = 0.0 
)
static

Calls constructor and init().

Returns
Newly constructed object.
virtual const DtVrfObjectPredicate& DtManagedObjectList::predicate ( ) const
virtual

Returns the predicate which determines membership in the list.

virtual bool DtManagedObjectList::reevaluateFlag ( ) const
virtual

Returns true if this list get reevaluated.

virtual DtTime DtManagedObjectList::evaluationPeriod ( ) const
virtual

Returns the evaluation interval.

static DtManagedObjectListPtr DtManagedObjectList::nullList ( )
static
virtual iterator DtManagedObjectList::begin ( )
virtual

Calls down to the corresponding method from contained myFilteredObjectList.

virtual const_iterator DtManagedObjectList::begin ( ) const
virtual
virtual iterator DtManagedObjectList::end ( )
virtual
virtual const_iterator DtManagedObjectList::end ( ) const
virtual
virtual size_t DtManagedObjectList::size ( ) const
virtual
virtual DtVrfObject* DtManagedObjectList::find ( const DtEntityIdentifier &  entityId) const
virtual
Returns
the DtVrfObject* of the entity with the specified identifier if it exists on this list. Otherwise NULL.
virtual void DtManagedObjectList::invalidate ( )
virtual

Clears out all objects on the list and sets the local object manager pointer to NULL.

This is called if the object manager is destroyed before the list is. After calling this, the list will not be able to contain any objects. In general, the user should not call this method. It should only be called the the manager.

virtual void DtManagedObjectList::add ( DtVrfObject obj)
protectedvirtual
virtual void DtManagedObjectList::remove ( DtVrfObject obj)
protectedvirtual
virtual void DtManagedObjectList::populateList ( )
protectedvirtual

Sets up the list with initial contents based on predicate.

static void DtManagedObjectList::objectAddedCallback ( DtVrfObject vrfObject,
void *  usr 
)
staticprotected

Object Manager callbacks.

virtual void DtManagedObjectList::processObjectAdded ( DtVrfObject vrfObject)
protectedvirtual
static void DtManagedObjectList::objectRemovedCallback ( DtVrfObject vrfObject,
void *  usr 
)
staticprotected
virtual void DtManagedObjectList::processObjectRemoved ( DtVrfObject vrfObject)
protectedvirtual
static void DtManagedObjectList::predicateCallback ( DtVrfObject vrfObject,
DtVrfObjectPredicateEvaluator predicateEval,
void *  userData 
)
staticprotected

Object predicate callbacks.

virtual void DtManagedObjectList::processPredicateCallback ( DtVrfObject vrfObject,
DtVrfObjectPredicateEvaluator predicateEval 
)
protectedvirtual

Member Data Documentation

DtVrfObjectManager* DtManagedObjectList::myObjectManager
protected
DtVrfObjectPredicate* DtManagedObjectList::myPredicate
protected
DtVrfObjectPredicate* DtManagedObjectList::myNegatedPredicate
protected
bool DtManagedObjectList::myReevaluateFlag
protected
DtTime DtManagedObjectList::myEvaluationPeriod
protected
std::list<DtVrfObject*> DtManagedObjectList::myFilteredObjectList
protected

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

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)