17 #include <vlutil/vlConfig.h>
19 #include <vlutil/vlSmartPointers.h>
20 #include <vlutil/vlTime.h>
22 #include <tbb/spin_mutex.h>
62 virtual void init(
const std::vector<DtSimObjectReference>&);
68 bool reevaluateFlag =
false,
DtTime evaluationPeriod = 0,
82 bool reevaluatePeriodically =
false,
DtTime evaluationPeriod = 0.0,
95 virtual bool reevaluateFlag()
const ;
98 virtual DtTime evaluationPeriod()
const;
100 typedef std::set<DtSimObjectReference>::iterator
iterator;
112 virtual size_t size()
const;
127 virtual void invalidate();
132 return myLastTimeModified;
136 virtual bool isTimeToEvaluate()
const;
145 virtual void populateList();
182 mutable double myNextEvaluationTime = 0.;
UUID is a unique ID wrapper class.
Definition: uuid.h:59
DtTime myEvaluationPeriod
Definition: managedObjectList.h:163
double myLastTimeModified
Definition: managedObjectList.h:181
std::map< unsigned long long, ConnectionInformation > ConnectionMap
Definition: managedObjectList.h:176
tbb::spin_mutex myMutex
Definition: managedObjectList.h:168
bool myReevaluateFlag
Definition: managedObjectList.h:162
voidpf void uLong size
Definition: ioapi.h:39
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
Simple asynchronous callback queue.
Definition: vrfCallbackQueue.h:32
Contains the DtUUID class declaration.
std::set< DtSimObjectReference > myFilteredObjectList
Definition: managedObjectList.h:165
const DtSimulationServices * mySimulationServices
Definition: managedObjectList.h:159
std::set< DtSimObjectReference >::iterator iterator
Definition: managedObjectList.h:100
DtVrfObjectPredicate * myNegatedPredicate
Definition: managedObjectList.h:161
Contains the DtVrfObjectPredicate class declaration.
Definition: vrfObjectPredicate.h:20
DtString myListName
Definition: managedObjectList.h:166
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtBoost::shared_ptr< DtManagedObjectList > DtManagedObjectListPtr
Evaluation period of -1 means to keep around but never evaluate beyond what the list already has...
Definition: managedObjectList.h:26
The predicate callback manager allows for registration of callbacks by sim object for predicates...
Definition: predicateCallbackManager.h:20
DtVrfObjectPredicate * myPredicate
Definition: managedObjectList.h:160
ConnectionMap myConnectionMap
Definition: managedObjectList.h:177
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:95
Definition: vrfObjectPredicateEvaluator.h:17
std::set< DtSimObjectReference >::const_iterator const_iterator
Definition: managedObjectList.h:101
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:88
static const DtVrfObjectPredicate & nullPredicate()
Returns an instance of a DtNullVrfObjectPredicate.
double lastTimeModified() const
The last wall clock time this list was modified (object added or removed)
Definition: managedObjectList.h:130
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
DtBoost::shared_ptr< const DtManagedObjectList > DtManagedObjectListConstPtr
Typedef for a shared pointer to a const DtOrgViewManagedObjectList. These lists are used within VR-Fo...
Definition: managedObjectList.h:35
Instances of DtManagedObjectList are created and maintained by a DtManagedObjectListManager. The lists contains a subset of the objects in DtSimObjectManager that meet the specified predicate. If specified at creation time, the list automatically updates itself periodically. The lists should be handled though shared pointers.
Definition: managedObjectList.h:45
DtPredicateCallbackManager myPredicateCallbackManager
Definition: managedObjectList.h:164
boost::signals2::scoped_connection mySimObjectAddedConnection
Definition: managedObjectList.h:179