VR-Forces 4.0.4 Class Documentation
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes
makVrv::DtAggregateEchelonManager Class Reference

The class that will be used to keep track of echelon hierarchy. More...

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

List of all members.

Public Types

enum  Flags { Destroyed = 0x80000000 }

Public Member Functions

virtual ~DtAggregateEchelonManager ()
virtual void setRecord (const makArchives::DtAggregateSettingsRecord &)
 Called when aggregate settings have changed, redo settings for appropriate observer mode.
virtual void setDestroyed (DtElementID id, bool)
 Sets whether or not something is destroyed.
bool destroyed (DtElementID) const
void removeElementPendingDestroyedState (DtElementID id)
 Individual entities also add destroyed state info, which they need to remove when they are destroyed.
const DtElementIDHierarchyhierarchy () const
 Retrieves the hierarchy.
DtElementIDHierarchyhierarchy ()

Static Public Member Functions

static DtAggregateEchelonManagerinstance (DtConnection &sim)
 Get the global instance.
static void registerInstance (DtConnection &sim, DtAggregateEchelonManager *)
 Register the global instance.

Public Attributes

boost::signal< void(DtElementID,
bool b) > 
signal_aggregateDestroyedStateChanged
boost::signal< void(DtElementIDHierarchyNode *) > signal_hierarchyItemModified

Protected Member Functions

virtual void hierarchyItemModified (DtElementIDHierarchyNode *)
 Called when a hierarchy item is modified. Uses echelon signaler to emit signal that an item was modified.
virtual void hierarchyItemAboutToBeRemoved (DtElementIDHierarchyNode *)
 Called when a hierarchy item is about to be removed.
virtual
DtElementIDHierarchyNode::DisplayState 
expectedDisplayStateFor (const DtElementIDHierarchyNode *node)
 Will return either hidden or ghosted.
virtual void updateDestroyedState (DtElementIDHierarchyNode *parentNode)
 Will process the parent for the new subordinate destroyed state (and any other parent that might be effected)
virtual void updateHierarchy (DtElementID parentId, const DtElementIDHierarchy::ElementIDs &children)
 Override to see if the destroyed state of an item that has children should be updated.
 DtAggregateEchelonManager ()

Protected Attributes

makArchives::DtAggregateSettingsRecord myAggregateSettings
std::map< DtElementID, boolmyPendingDestroyedStates
DtElementIDHierarchy myHierarchy

Detailed Description

The class that will be used to keep track of echelon hierarchy.


Member Enumeration Documentation

Enumerator:
Destroyed 

Constructor & Destructor Documentation


Member Function Documentation

Get the global instance.

Register the global instance.

Called when a hierarchy item is modified. Uses echelon signaler to emit signal that an item was modified.

Called when a hierarchy item is about to be removed.

Called when aggregate settings have changed, redo settings for appropriate observer mode.

virtual void makVrv::DtAggregateEchelonManager::setDestroyed ( DtElementID  id,
bool   
) [virtual]

Sets whether or not something is destroyed.

Since aggregates do not publish their destroyed states, this will keep track of that, and signal when aggregate destroyed states changes based on their subordinates

Individual entities also add destroyed state info, which they need to remove when they are destroyed.

Retrieves the hierarchy.

Will return either hidden or ghosted.

virtual void makVrv::DtAggregateEchelonManager::updateDestroyedState ( DtElementIDHierarchyNode parentNode) [protected, virtual]

Will process the parent for the new subordinate destroyed state (and any other parent that might be effected)

virtual void makVrv::DtAggregateEchelonManager::updateHierarchy ( DtElementID  parentId,
const DtElementIDHierarchy::ElementIDs children 
) [protected, virtual]

Override to see if the destroyed state of an item that has children should be updated.


Member Data Documentation


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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)