VR-Forces 5.0.1 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 | Friends
makVrv::DtWaterClampingUpdater Class Reference

DtWaterClampingUpdater defines the interface for scene object updaters that clamp scene objects to dynamic ocean. This base class just passes any inputs to the output of the updater, making it possible to instantiate a water clamping updater even if a real dynamic ocean implementation is not available.

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

Public Member Functions

 DtWaterClampingUpdater (DtDe &de, DtUniqueID id)
 
virtual ~DtWaterClampingUpdater ()
 
virtual void update (DtTime tNow)
 
virtual bool clampToWater (DtTime tNow)
 
virtual void setPaused (bool paused)
 
virtual void setWaterlineOriginOffset (float offset)
 
virtual void setLOD (float lodDistance)
 
virtual void setMinimumCullDistance (float distance)
 
virtual void setCullType (int cullType)
 
virtual void setIsSinking (bool isSinking)
 
- 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 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 void setOutputOrientation (const DtTaitBryan &orientation)
 
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)
 
virtual void setLodSystemEnabled (bool enabled)
 
virtual bool lodSystemEnabled () const
 
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
 
DtUniqueID uniqueId () const
 
DtSceneObjectUpdaterfindNextUpdater () const
 
DtSceneObjectUpdaterfindPrevUpdater () const
 
virtual bool isChainThreadSafe (DtSceneObjectUpdater *firstUpdater)
 
virtual DtSceneObjectUpdaterchainHead ()
 
virtual void setIsThreadSafe (bool safe)
 
DtSceneObjectfindSceneObject ()
 
DtSceneObject *const findSceneObject () const
 
- 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 void setNextUpdaterWithoutManagerPlacement (DtSceneObjectUpdater *updater)
 
- 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 ()
 
virtual void slot_managerAboutToBeDeleted ()
 

Protected Attributes

float myWaterlineOriginOffset
 
float myLodDistance
 
float myMinimumCullDistance
 
DtEntitySettingsRecord::BuoyancyCullType myCullType
 
bool myIsSinking
 
- Protected Attributes inherited from makVrv::DtSceneObjectUpdater
DtDemyDe
 
DtUniqueID myUniqueId
 
DtSceneObjectmySceneObject
 
int myModelSet
 
boost::signalslib::connection mySceneObjectConnection
 
DtSceneObjectUpdatermyNextUpdater
 
DtSceneObjectUpdatermyPrevUpdater
 
unsigned int myVertexToUpdate
 
DtVector myInputPosition
 
DtTaitBryan myInputOrientation
 
bool myPositionDataOutputted
 
bool myOrientationDataOutputted
 
UpdateLODParams myLodUpdateParams
 
- Protected Attributes inherited from makVrv::DtTickable
DtTickableManagerInterfacemyManager
 
DtSignalConnectionManager myConnections
 
unsigned int myFrameCounter
 
unsigned int myFrameToUpdate
 
unsigned int myUpdatePeriod
 
DtTime myLastUpdateTime
 
bool myIsThreadSafe
 
TickableListState myTickableListState
 

Friends

class DtSurfaceClampingUpdater
 

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
 

Constructor & Destructor Documentation

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

CTOR.

virtual makVrv::DtWaterClampingUpdater::~DtWaterClampingUpdater ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrv::DtWaterClampingUpdater::update ( DtTime  tNow)
virtual

do the actual clamping.

Reimplemented from makVrv::DtSceneObjectUpdater.

virtual bool makVrv::DtWaterClampingUpdater::clampToWater ( DtTime  tNow)
virtual

Clamp an object to the water using the buoyancy model. The base class defines a do-nothing pass-through.

Reimplemented in makVrv::DtTritonWaterClampingUpdater.

virtual void makVrv::DtWaterClampingUpdater::setPaused ( bool  paused)
inlinevirtual

Pause the bouyancy model (not yet implemented)

Reimplemented in makVrv::DtTritonWaterClampingUpdater.

virtual void makVrv::DtWaterClampingUpdater::setWaterlineOriginOffset ( float  offset)
virtual

Set an altitude offset from the scene object origin to its waterline.

Reimplemented in makVrv::DtTritonWaterClampingUpdater.

virtual void makVrv::DtWaterClampingUpdater::setLOD ( float  lodDistance)
virtual

Set the distance (m) to LOD out the buoyancy simulation.

Reimplemented in makVrv::DtTritonWaterClampingUpdater.

virtual void makVrv::DtWaterClampingUpdater::setMinimumCullDistance ( float  distance)
virtual

Set the distance within which buoyancy won't be frustum culled.

virtual void makVrv::DtWaterClampingUpdater::setCullType ( int  cullType)
virtual

Sets the type of buoyancy culling used (FrontFacing or None).

virtual void makVrv::DtWaterClampingUpdater::setIsSinking ( bool  isSinking)
virtual
virtual void makVrv::DtWaterClampingUpdater::setNextUpdaterWithoutManagerPlacement ( DtSceneObjectUpdater updater)
protectedvirtual

Friends And Related Function Documentation

friend class DtSurfaceClampingUpdater
friend

Member Data Documentation

float makVrv::DtWaterClampingUpdater::myWaterlineOriginOffset
protected
float makVrv::DtWaterClampingUpdater::myLodDistance
protected
float makVrv::DtWaterClampingUpdater::myMinimumCullDistance
protected
DtEntitySettingsRecord::BuoyancyCullType makVrv::DtWaterClampingUpdater::myCullType
protected
bool makVrv::DtWaterClampingUpdater::myIsSinking
protected

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

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)