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
makVrf::DtVrfAttachableEntityFanUpdater Class Reference

Overide that adds the ability to request information from the back-end for Fan checks.

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

Public Member Functions

 DtVrfAttachableEntityFanUpdater (makVrv::DtDe &de, makVrv::DtElementID id)
 
virtual ~DtVrfAttachableEntityFanUpdater ()
 
- Public Member Functions inherited from makVrv::DtAttachableEntityFanUpdater
 DtAttachableEntityFanUpdater (DtDe &de, DtElementID id)
 
virtual ~DtAttachableEntityFanUpdater ()
 
virtual void setEllipseAgent (DtOverlayEllipseArcModelAgent *)
 
virtual void setEllipseAgent (DtExtrudedEllipseModelAgent *)
 
virtual void setMultiLineModelAgent (DtMultiLineModelAgent *)
 
virtual void setSceneObjectAgent (DtSceneObjectAgent *)
 
virtual void setMultilineSceneObjectAgent (DtSceneObjectAgent *)
 
- Public Member Functions inherited from makVrv::DtAttachableIntervisibilityUpdater
 DtAttachableIntervisibilityUpdater (DtDe &de, DtElementID id)
 
virtual ~DtAttachableIntervisibilityUpdater ()
 
virtual void setFixedDistance (bool)
 
virtual void setIsRangeLine (bool isRangeLine)
 
virtual bool isRangeLine () const
 
- Public Member Functions inherited from makVrv::DtLineModelUpdater
 DtLineModelUpdater (DtDe &de, DtElementID id)
 
virtual ~DtLineModelUpdater ()
 
virtual void setStartPoint (const DtVector &position)
 
virtual void attachStartPoint (DtElementID id)
 
virtual void setStartPointOffset (const DtVector &offset)
 
virtual void setEndPoint (const DtVector &position)
 
virtual void attachEndPoint (DtElementID id)
 
virtual void setEndPointOffset (const DtVector &offset)
 
virtual DtVector calculateStartPoint ()
 
virtual DtVector calculateEndPoint ()
 
virtual void setSceneObject (DtSceneObject *sceneObject)
 
- Public Member Functions inherited from makVrv::DtAttachableUpdater
 DtAttachableUpdater (DtDe &de, DtUniqueID id)
 
virtual ~DtAttachableUpdater ()
 
virtual bool needsUpdate (DtTime tNow)
 
virtual void addAttachedPoint (const DtVector &position, int targetVertexIndex)
 
virtual void addAttachedPoint (DtUniqueID sceneObjectId, int targetVertexIndex)
 
virtual void addAttachedPoint (DtElementID elementId, DtModelSetId modelSet, int targetVertexIndex)
 
virtual void addAttachedPoint (DtUniqueID sceneObjectId, int vtx1, int vtx2, double proportion, int targetVertexIndex)
 
virtual const AttachedPointattachedPoint (int targetVertexIndex) const
 
virtual void setPositionOffset (const DtVector &offset)
 
virtual void setWorldPositionOffset (const DtVector &offset)
 
virtual void setPositionOffset (const DtVector &offset, int vtx)
 
virtual void setOrientationOffset (const DtTaitBryan &offset)
 
virtual void setWorldOrientationOffset (const DtTaitBryan &offset)
 
virtual void setAttachedPointMode (unsigned int mode, int vtx)
 
virtual void setModel (DtModel *model)
 
virtual void doAttachment (DtTime tNow)
 
DtTime lastUpdateTime () const
 
- Public Member Functions inherited from makVrv::DtTickable
virtual bool updateIfNeeded (DtTime tNow)
 
virtual ~DtTickable ()
 
virtual void setTickableEnabled (bool enabled)
 
virtual void setIsThreadSafe (bool safe)
 
virtual bool isThreadSafe () const
 
virtual void setTickableListState (TickableListState safeList)
 
virtual TickableListState tickableListState () const
 
virtual void setUpdatePeriod (unsigned int period)
 
virtual unsigned int updatePeriod () const
 
virtual bool adaptiveTickLodEnabled () const
 
- Public Member Functions inherited from makVrf::DtBackendIntervisibilityChecker
 DtBackendIntervisibilityChecker (makVrv::DtDe &, const std::string &type)
 
virtual ~DtBackendIntervisibilityChecker ()
 
virtual const IntersectionPointsintersections () const
 

Protected Member Functions

virtual bool doIntersection (const DtTime tNow) override
 
virtual void requestLineOfSightCheck (const DtVector &start, const DtVector &end)
 
virtual void update (DtTime tNow)
 
virtual makVrv::DtUniqueID lineOfSightKey () const
 
virtual void slot_optionsChanged (makVrv::DtUniqueID, DtVrfExtendedIntervisibilitySettingsData::IntervisibilitySettings)
 
virtual void setEntityFanUpdateRate (double d)
 
virtual bool internalDoIntersection (bool &anythingChanged)
 
virtual void sceneObjectRemoved (makVrv::DtUniqueID sceneObjectId)
 
virtual void updateIntersections ()
 
virtual bool isIntersectableObject (const makVrv::DtElementEntry &s) const override
 
- Protected Member Functions inherited from makVrv::DtAttachableEntityFanUpdater
virtual void updateSceneObject (DtTime tNow) override
 
virtual void update ()
 
virtual bool removeElement (DtElementID id)
 
virtual void slot_coordinateSystemChanged ()
 
- Protected Member Functions inherited from makVrv::DtAttachableIntervisibilityUpdater
virtual double calculateDistance (const DtVector &start, const DtVector &end, DtVector *circleOrigin=0) const
 
virtual void calculateFixedDistance ()
 
virtual DtVector fixedDistanceFrom (const DtVector &start, const DtVector &end, double heading, double distance) const
 
virtual double calculateHeading (const DtVector &start, const DtVector &end) const
 
virtual DtVector clamp (const DtVector &pt) const
 
- Protected Member Functions inherited from makVrv::DtLineModelUpdater
virtual void cleanup (PointInformation &pointInfo)
 
virtual DtVector offsetPoint (const DtVector &point, const DtVector &offset, const DtTaitBryan &rootOri=DtTaitBryan()) const
 
virtual DtVector getAttachedPosition (PointInformation &pointInfo)
 
virtual DtTaitBryan getAttachedOrientation (PointInformation &pointInfo)
 
virtual void getSceneInformation (const PointInformation &info, DtUniqueID &sceneId)
 
virtual void slot_attachedSceneObjectToBeDeleted (DtUniqueID, PointInformation *)
 
virtual void slot_attachedUpdaterToBeDeleted (DtUniqueID, PointInformation *)
 
- Protected Member Functions inherited from makVrv::DtAttachableUpdater
virtual bool pointLocationAndOrientation (AttachedPoint *point, double simTime, DtVector &location, DtTaitBryan &orientation)
 
virtual void removeAttachedPoint (int vtx, DtVector *positionOffset=0)
 
virtual void slot_sceneObjectToBeDeleted (const DtUniqueID &id)
 
virtual void slot_modelToBeDeleted (DtModel *model)
 
virtual void slot_attachedSceneObjectToBeDeleted (const DtUniqueID &)
 
virtual void slot_attachedUpdaterToBeDeleted (const DtUniqueID &id)
 
- Protected Member Functions inherited from makVrv::DtTickable
 DtTickable (DtTickableManagerInterface *manager)
 
 DtTickable ()=delete
 
virtual void slot_managerAboutToBeDeleted ()
 
- Protected Member Functions inherited from makVrf::DtBackendIntervisibilityChecker
virtual bool canCheckBackend () const
 
virtual bool needsRequestForBackendLineOfSight (const DtVector &startPoint, const DtVector &endPoint, bool *retStartingTimeRequest=0, bool useRegardlessOfBackendStatus=false)
 
virtual bool backendUpdateReady ()
 
virtual void processLineOfSightResponse (makVrv::DtUniqueID, const DtIfIntersectionInformationResponse::IntersectionPairInformation &)
 
virtual void processedBackendData ()
 
virtual bool shouldWaitForServer () const
 

Protected Attributes

double myTimeSinceLastUpdate
 
DtTimedSection myUpdateTimer
 
bool myModelSetDiscovered
 
bool myForceUpdate
 
- Protected Attributes inherited from makVrv::DtAttachableEntityFanUpdater
Intersections myIntersections
 
bool myIntersectionsChangedViaSignal = false
 
double myEntityFanUpdateRate
 
double myLastRadius
 
DtOverlayEllipseArcModelAgent * my2DEllipseAgent
 
DtExtrudedEllipseModelAgent * my3DEllipseAgent
 
DtMultiLineModelAgent * myMultiLineModelAgent
 
DtSceneObjectAgent * mySceneObjectAgent
 
DtSceneObjectAgent * myMultilineSceneObjectAgent
 
DtCachedIntersectorsContainermyCachedIntersectorsContainer = nullptr
 
DtCoordinateSystemmyCoordinateSystem = nullptr
 
- Protected Attributes inherited from makVrv::DtAttachableIntervisibilityUpdater
IntersectionInformation myIntersectionInformation
 
bool myIsRangeLine
 
bool myFixDistance
 
double myFixedDistance
 
double myFixedHeading
 
DtIntersectorsContainermyIntersectors = nullptr
 
DtCachedIntersectorsContainermyCachedIntersectorsContainer = nullptr
 
DtCoordinateSystemmyCoordinateSystem = nullptr
 
const DtObserverModeManagermyObserverModeManager
 
- Protected Attributes inherited from makVrv::DtLineModelUpdater
PointInformation myStartPoint
 
PointInformation myEndPoint
 
- Protected Attributes inherited from makVrv::DtAttachableUpdater
DtDemyDe
 
DtUniqueID myUniqueId
 
DtSceneObjectmySceneObject
 
DtModelmyModel
 
boost::signalslib::connection mySceneObjectOrModelConnection
 
boost::signalslib::connection mySceneObjectUpdaterConnection
 
AttachedPointsVector myAttachedPoints
 
DtVector myPositionOffset
 
DtTaitBryan myOrientationOffset
 
DtVector myWorldPositionOffset
 
DtTaitBryan myWorldOrientationOffset
 
DtUniqueID mySceneObjectId
 
- 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
 
- Protected Attributes inherited from makVrf::DtBackendIntervisibilityChecker
makVrv::DtDemyCheckerDe
 
makVrv::DtSignalConnectionManager myCheckerConnections
 
DtVrfExtendedIntervisibilitySettingsData::IntervisibilitySettings myIntersectionSettings
 
bool myBackendUpdateReady
 
DtBackendLineOfSightManagermyLineOfSightManager
 
bool myOptionsChanged
 
IntersectionPoints myIntersectionPoints
 
makVrv::DtUniqueID myLineOfSightId
 

Additional Inherited Members

- Public Types inherited from makVrv::DtAttachableUpdater
enum  AttachedPointType {
  AttachedPointTypeVertex, AttachedPointTypeObject, AttachedPointTypeProportional, AttachedPointTypeDeprecatedObject,
  AttachedPointTypeInvalidObject
}
 
enum  AttachedPointMode { AttachedPointModePositionAndOrientation, AttachedPointModePositionOnly, AttachedPointModeOrientationOnly }
 
- Public Types inherited from makVrv::DtTickable
enum  TickableListState { TickableNotOnList, TickableOnMainList, TickableOnThreadSafeList }
 
- Public Types inherited from makVrf::DtBackendIntervisibilityChecker
typedef std::vector
< IntersectionPoint
IntersectionPoints
 
- Protected Types inherited from makVrv::DtAttachableEntityFanUpdater
typedef std::unordered_map
< DtElementID,
EntityFanIntersectionInformation
Intersections
 
- Protected Types inherited from makVrv::DtAttachableUpdater
typedef std::vector
< AttachedPoint * > 
AttachedPointsVector
 

Constructor & Destructor Documentation

makVrf::DtVrfAttachableEntityFanUpdater::DtVrfAttachableEntityFanUpdater ( makVrv::DtDe de,
makVrv::DtElementID  id 
)
virtual makVrf::DtVrfAttachableEntityFanUpdater::~DtVrfAttachableEntityFanUpdater ( )
virtual

Member Function Documentation

virtual bool makVrf::DtVrfAttachableEntityFanUpdater::doIntersection ( const DtTime  tNow)
overrideprotectedvirtual

override

Reimplemented from makVrv::DtAttachableEntityFanUpdater.

virtual void makVrf::DtVrfAttachableEntityFanUpdater::requestLineOfSightCheck ( const DtVector start,
const DtVector end 
)
protectedvirtual
virtual void makVrf::DtVrfAttachableEntityFanUpdater::update ( DtTime  tNow)
protectedvirtual

override

Reimplemented from makVrv::DtAttachableEntityFanUpdater.

virtual makVrv::DtUniqueID makVrf::DtVrfAttachableEntityFanUpdater::lineOfSightKey ( ) const
protectedvirtual

Returns a unique identifier that can be used for this line of sight check. Note this can be shared amongst intervisibility objects that represent the same object, but maybe in different views (PVD, Stealth, etc)

Implements makVrf::DtBackendIntervisibilityChecker.

virtual void makVrf::DtVrfAttachableEntityFanUpdater::slot_optionsChanged ( makVrv::DtUniqueID  ,
DtVrfExtendedIntervisibilitySettingsData::IntervisibilitySettings   
)
protectedvirtual
virtual void makVrf::DtVrfAttachableEntityFanUpdater::setEntityFanUpdateRate ( double  d)
protectedvirtual
virtual bool makVrf::DtVrfAttachableEntityFanUpdater::internalDoIntersection ( bool anythingChanged)
protectedvirtual
virtual void makVrf::DtVrfAttachableEntityFanUpdater::sceneObjectRemoved ( makVrv::DtUniqueID  )
protectedvirtual

Called when a scene object is removed, remove it as an element.

Reimplemented from makVrv::DtAttachableEntityFanUpdater.

virtual void makVrf::DtVrfAttachableEntityFanUpdater::updateIntersections ( )
protectedvirtual
virtual bool makVrf::DtVrfAttachableEntityFanUpdater::isIntersectableObject ( const makVrv::DtElementEntry ) const
overrideprotectedvirtual

Returns true if the object should be checked for intersection.

Returns
true for entities

Reimplemented from makVrv::DtAttachableEntityFanUpdater.

Member Data Documentation

double makVrf::DtVrfAttachableEntityFanUpdater::myTimeSinceLastUpdate
protected
DtTimedSection makVrf::DtVrfAttachableEntityFanUpdater::myUpdateTimer
protected
bool makVrf::DtVrfAttachableEntityFanUpdater::myModelSetDiscovered
protected
bool makVrf::DtVrfAttachableEntityFanUpdater::myForceUpdate
protected

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

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)