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

Udpater that will update the sensor contact lines and positions for entities sensor contacts. More...

Inheritance diagram for makVrf::DtSensorContactLinesUpdater:
Inheritance graph
[legend]

Classes

struct  Object
 

Public Member Functions

 DtSensorContactLinesUpdater (makVrv::DtDe &de, makVrv::DtUniqueID id)
 CTOR. More...
 
virtual ~DtSensorContactLinesUpdater ()
 DTOR. More...
 
virtual void update (DtTime tNow)
 The update function called by DtTickableManager during update-ticks. More...
 
virtual void setSceneObject (makVrv::DtSceneObject *sceneObject)
 Set the scene object that is representative of the entity that is doing the sensing. More...
 
virtual void setSensorContactLinesModel (DtSensorContactLinesModel *)
 Set the model that will contain all the sensor contact lines. More...
 
virtual void setEnabled (bool)
 Whether or not this class should be updating. More...
 
- Public Member Functions inherited from makVrv::DtTickable
virtual bool updateIfNeeded (DtTime tNow)
 Calls needsUpdate(), and then calls update() if needsUpdate() is true. More...
 
virtual ~DtTickable ()
 Virtual DTOR. More...
 
virtual void setIsThreadSafe (bool safe)
 Get/set whether this tickable can be updated in parallel with other tickables. More...
 
virtual bool isThreadSafe () const
 
virtual void setTickableListState (TickableListState safeList)
 Track which tickable list (if any) this tickable is on Since the tickable constructor puts ALL tickables on the main (unThreadSafe) to start we need a way to check which list a tickable is on (and this way we can request removals from the correct list instead of having to call DtTickableManager::removeTickableObject(), which tries both lists). More...
 
virtual TickableListState tickableListState () const
 
virtual void setUpdatePeriod (unsigned int period)
 Specify how often (in # of frames) this tickable should call update. More...
 
virtual unsigned int updatePeriod () const
 
virtual bool lodSystemEnabled () const
 is the update LOD system enabled, overridden by subclasses More...
 

Protected Types

typedef std::map
< makVrv::DtUniqueID, Object
SensorContacts
 

Protected Member Functions

virtual bool needsUpdate (DtTime tNow)
 The check function called by DtTickableManager to verify if an update is required. More...
 
virtual void slot_sceneObjectToBeDeleted (const makVrv::DtUniqueID &id)
 
virtual void slot_contactInfoReceived (DtUUID, const DtVrfSensorInfoManager::DtSensorInformationMap &)
 
virtual void slot_sensorContactLinesModelToBeDestroyed (makVrv::DtModel *)
 
virtual void addSensorContact (makVrv::DtUniqueID)
 
virtual void slot_sensorContactToBeDeleted (const makVrv::DtUniqueID &id)
 
virtual void connectSceneObject ()
 
virtual void clearSensorContacts (SensorContacts &)
 
virtual bool findSpotReportFor (Object &)
 
- Protected Member Functions inherited from makVrv::DtTickable
 DtTickable (DtTickableManagerInterface *manager)
 CTOR. More...
 
 DtTickable ()
 Unimplemented default CTOR. More...
 
virtual void slot_managerAboutToBeDeleted ()
 

Protected Attributes

SensorContacts mySensorContacts
 
makVrv::DtSceneObjectmySceneObject
 
DtSensorContactLinesModelmySensorContactLinesModel
 
bool myEnabled
 
makVrv::DtDemyDe
 
makVrv::DtUniqueID myUniqueId
 
bool myPendingConnection
 
DtVector myLastPosition
 
boost::signalslib::connection mySceneObjectConnection
 When the class is destructed, the scene object may or may not exist. More...
 
- Protected Attributes inherited from makVrv::DtTickable
DtTickableManagerInterfacemyManager
 Pointer to manager for removal during destruction. More...
 
DtSignalConnectionManager myConnections
 
unsigned int myFrameCounter
 
unsigned int myFrameToUpdate
 
unsigned int myUpdatePeriod
 
DtTime myLastUpdateTime
 
bool myIsThreadSafe
 
TickableListState myTickableListState
 

Additional Inherited Members

- Public Types inherited from makVrv::DtTickable
enum  TickableListState { TickableNotOnList, TickableOnMainList, TickableOnThreadSafeList }
 Enumeration used to indicate which DtTickableManager's tickable list the tickable is on, if any. More...
 

Detailed Description

Udpater that will update the sensor contact lines and positions for entities sensor contacts.

The entity is defined by the ID of the supplied scene object

Member Typedef Documentation

Constructor & Destructor Documentation

makVrf::DtSensorContactLinesUpdater::DtSensorContactLinesUpdater ( makVrv::DtDe de,
makVrv::DtUniqueID  id 
)

CTOR.

virtual makVrf::DtSensorContactLinesUpdater::~DtSensorContactLinesUpdater ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrf::DtSensorContactLinesUpdater::update ( DtTime  tNow)
virtual

The update function called by DtTickableManager during update-ticks.

Parameters
[in]tNowis the current time-stamp.

Implements makVrv::DtTickable.

virtual void makVrf::DtSensorContactLinesUpdater::setSceneObject ( makVrv::DtSceneObject sceneObject)
virtual

Set the scene object that is representative of the entity that is doing the sensing.

virtual void makVrf::DtSensorContactLinesUpdater::setSensorContactLinesModel ( DtSensorContactLinesModel )
virtual

Set the model that will contain all the sensor contact lines.

virtual void makVrf::DtSensorContactLinesUpdater::setEnabled ( bool  )
virtual

Whether or not this class should be updating.

virtual bool makVrf::DtSensorContactLinesUpdater::needsUpdate ( DtTime  tNow)
protectedvirtual

The check function called by DtTickableManager to verify if an update is required.

If this function returns true, the DtTickableManager will then call update().

Parameters
[in]tNowis the current time-stamp.
Return values
trueif this object needs to be ticked.
falseotherwise. The base class checks handles period checks (for tickables that don't tick every frame. Deriving methods can incorporate that capability by calling down to the base class first.

Reimplemented from makVrv::DtTickable.

virtual void makVrf::DtSensorContactLinesUpdater::slot_sceneObjectToBeDeleted ( const makVrv::DtUniqueID id)
protectedvirtual
virtual void makVrf::DtSensorContactLinesUpdater::slot_contactInfoReceived ( DtUUID  ,
const DtVrfSensorInfoManager::DtSensorInformationMap  
)
protectedvirtual
virtual void makVrf::DtSensorContactLinesUpdater::slot_sensorContactLinesModelToBeDestroyed ( makVrv::DtModel )
protectedvirtual
virtual void makVrf::DtSensorContactLinesUpdater::addSensorContact ( makVrv::DtUniqueID  )
protectedvirtual
virtual void makVrf::DtSensorContactLinesUpdater::slot_sensorContactToBeDeleted ( const makVrv::DtUniqueID id)
protectedvirtual
virtual void makVrf::DtSensorContactLinesUpdater::connectSceneObject ( )
protectedvirtual
virtual void makVrf::DtSensorContactLinesUpdater::clearSensorContacts ( SensorContacts )
protectedvirtual
virtual bool makVrf::DtSensorContactLinesUpdater::findSpotReportFor ( Object )
protectedvirtual

Member Data Documentation

SensorContacts makVrf::DtSensorContactLinesUpdater::mySensorContacts
protected
makVrv::DtSceneObject* makVrf::DtSensorContactLinesUpdater::mySceneObject
protected
DtSensorContactLinesModel* makVrf::DtSensorContactLinesUpdater::mySensorContactLinesModel
protected
bool makVrf::DtSensorContactLinesUpdater::myEnabled
protected
makVrv::DtDe& makVrf::DtSensorContactLinesUpdater::myDe
protected
makVrv::DtUniqueID makVrf::DtSensorContactLinesUpdater::myUniqueId
protected
bool makVrf::DtSensorContactLinesUpdater::myPendingConnection
protected
DtVector makVrf::DtSensorContactLinesUpdater::myLastPosition
protected
boost::signalslib::connection makVrf::DtSensorContactLinesUpdater::mySceneObjectConnection
protected

When the class is destructed, the scene object may or may not exist.

Using a separate connection variable makes it possible to 'disconnect' even if the scene object has been deleted.


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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)