![]() |
VR-Forces 4.10 Class Documentation
|
This is not a typical updater, instead of the usual 1 updater per entity, the DtEntityWheelManager adds entity info to this updater which updates all the entity wheels in one update. More...

Public Member Functions | |
| DtEntityWheelUpdater (DtDe &de) | |
| CTOR. More... | |
| virtual | ~DtEntityWheelUpdater () |
| DTOR. More... | |
| virtual void | update (DtTime tNow) |
| update per tick. More... | |
| virtual void | setWheelData (std::unordered_map< DtOsgArticulatedModel *, DtEntityWheelData > *wheelMap) |
| Give the updater a pointer to the manager's wheel data map. More... | |
| virtual void | setWheelData (std::unordered_map< DtOsgArticulatedModel *, DtEntityWheelDataCommon > *wheelFlipBookMap) |
| Give the updater a pointer to the manager's wheel data map (flip books) More... | |
| virtual void | setWheelDataScrollableTexture (std::unordered_map< DtOsgArticulatedModel *, DtEntityWheelDataCommon > *wheelScrollableTextureMap) |
| Give the updater a pointer to the manager's wheel data map (scrollable textures) More... | |
Public Member Functions inherited from makVrv::DtTickable | |
| virtual bool | needsUpdate (DtTime tNow) |
| The check function called by DtTickableManager to verify if an update is required. More... | |
| 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 | updateWheels (DtTime tNow) |
| internal. update the wheels that are art parts, More... | |
| virtual void | updateWheelsFlipBookAnimations (DtTime tNow) |
| internal. update the wheels that are flip book animations. More... | |
| virtual void | updateWheelsScrollableTextures (DtTime tNow) |
| internal. update the wheels that are scrollable textures. More... | |
| virtual bool | calculateVelocity (DtVector &velocity, DtOsgArticulatedModel *model, DtEntityWheelDataCommon &wheelDataCommon, DtTime tNow) const |
| calculate the velocity of the entity Use the updater/dead reckoner of the velocity if present Else, use the last position/time (stored in wheel data common) More... | |
| virtual bool | calculateHeading (DtTaitBryan &heading, DtOsgArticulatedModel *model, DtTime tNow) |
| calculate the heading of the entity More... | |
| virtual float | calculateDistanceBetweenWheelAxles (DtOsgArticulatedModel *model, int firstSet, int secondSet) |
| internal function to calculate distance between 2 sets of wheel axles More... | |
| virtual bool | hasAckermanSteering (DtOsgArticulatedModel *model) const |
| is regular vehicle? More... | |
| virtual int | numSetOfWheels (const DtEntityWheelData &wheelData) const |
| how many set of wheels does it have? (e.g. 4 wheeler has 2 sets of wheels, a stryker has 4) More... | |
| virtual std::pair< double, double > | calculateAckermanSteeringVelocity (DtTime tNow, DtOsgArticulatedModel *model, DtEntityWheelData &wheelData, double speed) |
| calculate the steering velocity required for the first (and optionally the 2nd) set of wheels given the current time, speed More... | |
Protected Member Functions inherited from makVrv::DtTickable | |
| DtTickable (DtTickableManagerInterface *manager) | |
| CTOR. More... | |
| DtTickable () | |
| Unimplemented default CTOR. More... | |
| virtual void | slot_managerAboutToBeDeleted () |
Protected Attributes | |
| DtDe & | myDe |
| bool | myShouldRotate |
| std::unordered_map < DtOsgArticulatedModel *, DtEntityWheelData > * | myEntityWheelMap |
| map of entities to corresponding wheel data art parts More... | |
| std::unordered_map < DtOsgArticulatedModel *, DtEntityWheelDataCommon > * | myEntityWheelFlipBookMap |
| map of entities that have wheels as flip book animation and some common data for each (last position, last update) More... | |
| std::unordered_map < DtOsgArticulatedModel *, DtEntityWheelDataCommon > * | myEntityWheelScrollableTextureMap |
| std::unordered_map < DtOsgArticulatedModel *, DtVector > | myCachedVelocities |
| cache velocities More... | |
Protected Attributes inherited from makVrv::DtTickable | |
| DtTickableManagerInterface * | myManager |
| 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 |
Private Member Functions | |
| DtEntityWheelUpdater ()=delete | |
| Default Constructor not implemented – default constructor not allowed. More... | |
| DtEntityWheelUpdater (const DtEntityWheelUpdater &)=delete | |
| Copy Constructor not implemented - Copy not allowed. More... | |
| DtEntityWheelUpdater & | operator= (const DtEntityWheelUpdater &)=delete |
| Assignment Operator not implemented - Copy not allowed. More... | |
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... | |
This is not a typical updater, instead of the usual 1 updater per entity, the DtEntityWheelManager adds entity info to this updater which updates all the entity wheels in one update.
| makVrv::DtEntityWheelUpdater::DtEntityWheelUpdater | ( | DtDe & | de | ) |
CTOR.
|
virtual |
DTOR.
|
privatedelete |
Default Constructor not implemented – default constructor not allowed.
|
privatedelete |
Copy Constructor not implemented - Copy not allowed.
|
privatedelete |
Assignment Operator not implemented - Copy not allowed.
|
virtual |
|
virtual |
Give the updater a pointer to the manager's wheel data map.
|
virtual |
Give the updater a pointer to the manager's wheel data map (flip books)
|
virtual |
Give the updater a pointer to the manager's wheel data map (scrollable textures)
|
protectedvirtual |
internal. update the wheels that are art parts,
|
protectedvirtual |
internal. update the wheels that are flip book animations.
|
protectedvirtual |
internal. update the wheels that are scrollable textures.
|
protectedvirtual |
calculate the velocity of the entity Use the updater/dead reckoner of the velocity if present Else, use the last position/time (stored in wheel data common)
|
protectedvirtual |
calculate the heading of the entity
|
protectedvirtual |
internal function to calculate distance between 2 sets of wheel axles
|
protectedvirtual |
is regular vehicle?
|
protectedvirtual |
how many set of wheels does it have? (e.g. 4 wheeler has 2 sets of wheels, a stryker has 4)
|
protectedvirtual |
calculate the steering velocity required for the first (and optionally the 2nd) set of wheels given the current time, speed
|
protected |
|
protected |
|
protected |
map of entities to corresponding wheel data art parts
|
protected |
map of entities that have wheels as flip book animation and some common data for each (last position, last update)
|
protected |
|
protected |
cache velocities