VR-Forces 4.10 Class Documentation
 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 | Static Protected Attributes
makVrf::DtPriorityUpdater Class Reference

This class will take a priority and change it into a Z order and assign it to models that support z ordering. More...

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

Public Member Functions

 DtPriorityUpdater (makVrv::DtDe &de, makVrv::DtUniqueID id)
 CTOR. More...
 
virtual ~DtPriorityUpdater ()
 DTOR. More...
 
virtual void setPriority (unsigned int)
 Sets the priority of this object. More...
 
virtual void setSceneObject (makVrv::DtSceneObject *)
 Sets the scene object to be used for this object to set group for. 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 Member Functions

virtual void update (DtTime tNow)
 Reworks the z order for all items that can have the z order set. More...
 
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 updatePriorityForModel (makVrv::DtModel *)
 
- Protected Member Functions inherited from makVrv::DtTickable
 DtTickable (DtTickableManagerInterface *manager)
 CTOR. More...
 
 DtTickable ()
 Unimplemented default CTOR. More...
 
virtual void slot_managerAboutToBeDeleted ()
 

Protected Attributes

makVrv::DtDemyDe
 
makVrv::DtUniqueID myUniqueID
 
makVrv::DtSceneObjectmySceneObject
 
unsigned int myPriority
 
unsigned int myLastMaxPriority
 
unsigned int myLastSceneObjectSize
 
boost::signals2::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
 

Static Protected Attributes

static unsigned int theMaxPriority
 

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

This class will take a priority and change it into a Z order and assign it to models that support z ordering.

Constructor & Destructor Documentation

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

CTOR.

virtual makVrf::DtPriorityUpdater::~DtPriorityUpdater ( )
virtual

DTOR.

Member Function Documentation

virtual void makVrf::DtPriorityUpdater::setPriority ( unsigned  int)
virtual

Sets the priority of this object.

virtual void makVrf::DtPriorityUpdater::setSceneObject ( makVrv::DtSceneObject )
virtual

Sets the scene object to be used for this object to set group for.

virtual void makVrf::DtPriorityUpdater::update ( DtTime  tNow)
protectedvirtual

Reworks the z order for all items that can have the z order set.

Implements makVrv::DtTickable.

virtual bool makVrf::DtPriorityUpdater::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::DtPriorityUpdater::slot_sceneObjectToBeDeleted ( const makVrv::DtUniqueID id)
protectedvirtual
virtual void makVrf::DtPriorityUpdater::updatePriorityForModel ( makVrv::DtModel )
protectedvirtual

Member Data Documentation

makVrv::DtDe& makVrf::DtPriorityUpdater::myDe
protected
makVrv::DtUniqueID makVrf::DtPriorityUpdater::myUniqueID
protected
makVrv::DtSceneObject* makVrf::DtPriorityUpdater::mySceneObject
protected
unsigned int makVrf::DtPriorityUpdater::myPriority
protected
unsigned int makVrf::DtPriorityUpdater::myLastMaxPriority
protected
unsigned int makVrf::DtPriorityUpdater::myLastSceneObjectSize
protected
unsigned int makVrf::DtPriorityUpdater::theMaxPriority
staticprotected
boost::signals2::connection makVrf::DtPriorityUpdater::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 Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)