VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Member Functions | Protected Member Functions | Protected Attributes
makVrv::DtDrawnIntersectorManager Class Reference

Classes

struct  IntersectionQueueOp
 

Public Member Functions

 DtDrawnIntersectorManager (DtDe &de)
 
virtual ~DtDrawnIntersectorManager ()
 
 DtDrawnIntersectorManager ()=delete
 
 DtDrawnIntersectorManager (const DtDrawnIntersectorManager &rhs)=delete
 
DtDrawnIntersectorManageroperator= (const DtDrawnIntersectorManager &rhs)=delete
 
virtual void update (DtTime tNow)
 
virtual void drawIntersection (const DtIntersector::DtIntersections &results, double durationmodelSet, int modelSet)
 
virtual void drawIntersection (const DtIntersectorResult &result, double duration, int modelSet)
 

Protected Member Functions

virtual void processIntersectionsQueue (DtTime tNow)
 
virtual void expireDrawnIntersections (DtTime tNow)
 

Protected Attributes

DtDemyDe
 
tbb::concurrent_queue
< IntersectionQueueOp
myQueue
 
std::multimap< double,
DtDrawnIntersector * > 
myDrawnIntersectorMap
 

Constructor & Destructor Documentation

makVrv::DtDrawnIntersectorManager::DtDrawnIntersectorManager ( DtDe de)
virtual makVrv::DtDrawnIntersectorManager::~DtDrawnIntersectorManager ( )
virtual
makVrv::DtDrawnIntersectorManager::DtDrawnIntersectorManager ( )
delete
makVrv::DtDrawnIntersectorManager::DtDrawnIntersectorManager ( const DtDrawnIntersectorManager rhs)
delete

Member Function Documentation

DtDrawnIntersectorManager& makVrv::DtDrawnIntersectorManager::operator= ( const DtDrawnIntersectorManager rhs)
delete
virtual void makVrv::DtDrawnIntersectorManager::update ( DtTime  tNow)
virtual

This should be called from the main thread, after all the channels have been updated (and hence all the intersectors have pushed the intersections to draw on this manager's queue)

virtual void makVrv::DtDrawnIntersectorManager::drawIntersection ( const DtIntersector::DtIntersections results,
double  durationmodelSet,
int  modelSet 
)
virtual

This is thread safe. It just pushes the results on to a thread safe concurrent queue.

virtual void makVrv::DtDrawnIntersectorManager::drawIntersection ( const DtIntersectorResult result,
double  duration,
int  modelSet 
)
virtual

This is thread safe. It just pushes the results on to a thread safe concurrent queue.

virtual void makVrv::DtDrawnIntersectorManager::processIntersectionsQueue ( DtTime  tNow)
protectedvirtual

pop intersections list and make agents to draw the intersections

virtual void makVrv::DtDrawnIntersectorManager::expireDrawnIntersections ( DtTime  tNow)
protectedvirtual

expire drawn intersections

Member Data Documentation

DtDe& makVrv::DtDrawnIntersectorManager::myDe
protected
tbb::concurrent_queue<IntersectionQueueOp> makVrv::DtDrawnIntersectorManager::myQueue
protected
std::multimap<double, DtDrawnIntersector* > makVrv::DtDrawnIntersectorManager::myDrawnIntersectorMap
protected

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

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)