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

DtLaserDesignatorUpdater is an updater that is given a position and orientation, and depending on how it is configured, updates a scene object with a position and orientation that are clamped to the underlying terrain.

Inheritance diagram for makVrv::DtLaserDesignatorUpdater:
Inheritance graph
[legend]

Public Member Functions

 DtLaserDesignatorUpdater (DtDe &de, DtUniqueID id)
 
virtual ~DtLaserDesignatorUpdater ()
 
virtual void update (double simTime)
 
virtual void setEnabled (bool enabled)
 
virtual void setSpotLocation (const DtVector &end)
 
virtual void setDesignator (DtElementID sourceId)
 
virtual void setDesignatedObject (DtElementID designee)
 
- Public Member Functions inherited from makVrv::DtSceneObjectUpdater
 DtSceneObjectUpdater (DtDe &de, DtUniqueID id)
 
virtual ~DtSceneObjectUpdater ()
 
virtual void setNextUpdater (DtSceneObjectUpdater *nextUpdater)
 
virtual void setPrevUpdater (DtSceneObjectUpdater *prevUpdater)
 
virtual bool needsUpdate (DtTime tNow)
 
virtual void update (DtTime tNow)
 
virtual void updateAdaptiveTickrate (const DtVector &lastPos, const DtTime &deltaTime)
 
virtual void setVertexToUpdate (unsigned int vertex)
 
virtual void setInputPosition (const DtVector &position)
 
virtual void setInputOrientation (const DtTaitBryan &orientation)
 
virtual void setOutputPosition (const DtVector &position)
 
virtual DtVector outputPosition () const
 
virtual void setOutputOrientation (const DtTaitBryan &orientation)
 
virtual DtTaitBryan outputOrientation () const
 
virtual void setOutputPositionAndOrientation (const DtVector &position, const DtTaitBryan &orientation)
 
virtual DtTime lastUpdateTime () const
 
virtual void setSceneObject (DtSceneObject *sceneObject, bool addToTickableMgrIfHead)
 
virtual void setSceneObject (DtSceneObject *sceneObject)
 
DtUniqueID uniqueId () const
 
DtSceneObjectUpdaterfindNextUpdater () const
 
DtSceneObjectUpdaterfindPrevUpdater () const
 
virtual bool isChainThreadSafe (DtSceneObjectUpdater *firstUpdater)
 
virtual DtSceneObjectUpdaterchainHead ()
 
virtual void setIsThreadSafe (bool safe)
 
virtual void setTickableEnabled (bool enabled) override
 
virtual void setAdaptiveTickLodEnabled (bool enabled)
 
virtual bool adaptiveTickLodEnabled () const override
 
virtual void setLodScaleSpeedFactor (float factor)
 
virtual float lodScaleSpeedFactor () const
 
virtual void setLodRadiusStart (float ratius)
 
virtual float lodRadiusStart () const
 
virtual void setLodRadiusEnd (float ratius)
 
virtual float lodRadiusEnd () const
 
virtual void setNearLodUpdateRate (int nearRate)
 
virtual int nearLodUpdateRate () const
 
virtual void setFarLodUpdateRate (int maxRate)
 
virtual int farLodUpdateRate () const
 
DtSceneObjectfindActiveSceneObject ()
 
DtSceneObject *const findActiveSceneObject () const
 
DtSceneObjectfindSceneObjectForModelSet (DtModelSetId modelSet)
 
DtSceneObject *const findSceneObjectForModelSet (DtModelSetId modelSet) const
 
virtual void addSceneObjectToUpdate (DtModelSetId modelSet, DtSceneObject *sceneObject, bool addToTickableMgrIfHead=true)
 
virtual void removeSceneObjectToUpdate (DtModelSetId modelSet, DtSceneObject *sceneObject)
 
virtual void addSceneObjectToUpdateAtChainEnd (DtModelSetId modelSet, DtSceneObject *sceneObject, bool addToTickableMgrIfHead=true)
 
virtual void removeSceneObjectToUpdateAtChainEnd (DtModelSetId modelSet, DtSceneObject *sceneObject)
 
- Public Member Functions inherited from makVrv::DtTickable
virtual bool updateIfNeeded (DtTime tNow)
 
virtual ~DtTickable ()
 
virtual bool isThreadSafe () const
 
virtual void setTickableListState (TickableListState safeList)
 
virtual TickableListState tickableListState () const
 
virtual void setUpdatePeriod (unsigned int period)
 
virtual unsigned int updatePeriod () const
 

Protected Member Functions

virtual DtVector updateLocation (double simTime, DtSceneObject *&designeeSceneObject)
 
virtual DtTaitBryan updateOrientation (double simTime, DtSceneObject *designeeSceneObject)
 
virtual void slot_coordinateSystemChanged ()
 
- Protected Member Functions inherited from makVrv::DtSceneObjectUpdater
virtual void removeThreadSafeChainFromManager (DtSceneObjectUpdater *head)
 
virtual void removeUnThreadSafeChainFromManager (DtSceneObjectUpdater *head)
 
virtual void addThreadSafeChainToManager (DtSceneObjectUpdater *head)
 
virtual void addUnThreadSafeChainToManager (DtSceneObjectUpdater *head)
 
virtual void placeChainOnCorrectTickableList (DtSceneObjectUpdater *head)
 
virtual void slot_sceneObjectToBeDeleted (const DtUniqueID &id)
 
- Protected Member Functions inherited from makVrv::DtTickable
 DtTickable (DtTickableManagerInterface *manager)
 
 DtTickable ()=delete
 
virtual void slot_managerAboutToBeDeleted ()
 

Protected Attributes

DtElementID mySourceElementId
 
DtUniqueID mySourceSceneObjectId
 
DtElementID myDesignatedElementId
 
DtUniqueID myDesignatedSceneObjectId
 
DtVector mySpotLocation
 
bool myDirty
 
DtIntersectorsContainermyIntersectors = nullptr
 
DtCoordinateConvertermyCoordinateConverter = nullptr
 
- Protected Attributes inherited from makVrv::DtSceneObjectUpdater
DtDemyDe
 
DtUniqueID myUniqueId
 
DtModelSetId myModelSet
 
boost::signalslib::connection mySceneObjectConnection
 
DtSceneObjectUpdatermyNextUpdater
 
DtSceneObjectUpdatermyPrevUpdater
 
unsigned int myVertexToUpdate
 
DtVector myLastPositionForAdaptiveTickRate
 
DtVector myInputPosition
 
DtTaitBryan myInputOrientation
 
DtVector myLastOutputPosition
 
DtTaitBryan myLastOutputOrientation
 
bool myPositionDataOutputted
 
bool myOrientationDataOutputted
 
ModelSetToSceneObjectMap mySceneObjectMap
 
SceneObjectConnectionsMap mySceneObjectConnectionsMap
 
AdaptiveTickRateLODParams myAdaptiveTickRateLODParams
 
- Protected Attributes inherited from makVrv::DtTickable
DtTickableManagerInterfacemyManager
 
DtSignalConnectionManager myConnections
 
unsigned int myFrameCounter
 
unsigned int myFrameToUpdate
 
unsigned int myUpdatePeriod
 
unsigned int myTickableIndex
 
DtTime myLastUpdateTime
 
bool myIsThreadSafe
 
TickableListState myTickableListState
 

Additional Inherited Members

- Public Types inherited from makVrv::DtTickable
enum  TickableListState { TickableNotOnList, TickableOnMainList, TickableOnThreadSafeList }
 
- Public Attributes inherited from makVrv::DtSceneObjectUpdater
boost::signalslib::signal
< void(const DtUniqueID &) > 
signal_updaterToBeDeleted
 
- Protected Types inherited from makVrv::DtSceneObjectUpdater
using ModelSetToSceneObjectMap = std::map< DtModelSetId, DtSceneObject * >
 
using SceneObjectConnectionsMap = std::unordered_map< DtUniqueID, boost::signalslib::connection >
 

Constructor & Destructor Documentation

makVrv::DtLaserDesignatorUpdater::DtLaserDesignatorUpdater ( DtDe de,
DtUniqueID  id 
)

CTOR.

virtual makVrv::DtLaserDesignatorUpdater::~DtLaserDesignatorUpdater ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtLaserDesignatorUpdater::update ( double  simTime)
virtual

Calls doGroundClamp() followed by updateSceneObject()

virtual void makVrv::DtLaserDesignatorUpdater::setEnabled ( bool  enabled)
virtual

Set the Simple object's ground clamping Note that this only takes effect when setPosition() is called.

virtual void makVrv::DtLaserDesignatorUpdater::setSpotLocation ( const DtVector &  end)
virtual

Set the designator's endpoint. This is used if no entity is designated.

virtual void makVrv::DtLaserDesignatorUpdater::setDesignator ( DtElementID  sourceId)
virtual

Set the Element ID of the entity that is designating Finds the scene object ID of the visualizer from the modelSet that created the model that this updater updates.

virtual void makVrv::DtLaserDesignatorUpdater::setDesignatedObject ( DtElementID  designee)
virtual

Set the Element ID of the entity that is designated Finds the scene object ID of the visualizer from the modelSet that created the model representing the entity that was designated. This (DtUniqueID)0 if no entity was designated.

virtual DtVector makVrv::DtLaserDesignatorUpdater::updateLocation ( double  simTime,
DtSceneObject *&  designeeSceneObject 
)
protectedvirtual
virtual DtTaitBryan makVrv::DtLaserDesignatorUpdater::updateOrientation ( double  simTime,
DtSceneObject designeeSceneObject 
)
protectedvirtual
virtual void makVrv::DtLaserDesignatorUpdater::slot_coordinateSystemChanged ( )
protectedvirtual

slot for when the coordinate system changes

Member Data Documentation

DtElementID makVrv::DtLaserDesignatorUpdater::mySourceElementId
protected
DtUniqueID makVrv::DtLaserDesignatorUpdater::mySourceSceneObjectId
protected
DtElementID makVrv::DtLaserDesignatorUpdater::myDesignatedElementId
protected
DtUniqueID makVrv::DtLaserDesignatorUpdater::myDesignatedSceneObjectId
protected
DtVector makVrv::DtLaserDesignatorUpdater::mySpotLocation
protected
bool makVrv::DtLaserDesignatorUpdater::myDirty
protected
DtIntersectorsContainer* makVrv::DtLaserDesignatorUpdater::myIntersectors = nullptr
protected
DtCoordinateConverter* makVrv::DtLaserDesignatorUpdater::myCoordinateConverter = nullptr
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)