VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members | 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]

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 ()
- Public Member Functions inherited from makVrv::DtVirtualBaseClass
 DtVirtualBaseClass ()
 Do nothing constructor.
virtual ~DtVirtualBaseClass ()
 Virtual do nothing destructor.

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

virtual makVrv::DtAggregateEchelonManager::~DtAggregateEchelonManager ( )
virtual
makVrv::DtAggregateEchelonManager::DtAggregateEchelonManager ( )
protected

Member Function Documentation

static DtAggregateEchelonManager& makVrv::DtAggregateEchelonManager::instance ( DtConnection sim)
static

Get the global instance.

static void makVrv::DtAggregateEchelonManager::registerInstance ( DtConnection sim,
DtAggregateEchelonManager  
)
static

Register the global instance.

virtual void makVrv::DtAggregateEchelonManager::hierarchyItemModified ( DtElementIDHierarchyNode )
protectedvirtual

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

virtual void makVrv::DtAggregateEchelonManager::hierarchyItemAboutToBeRemoved ( DtElementIDHierarchyNode )
protectedvirtual

Called when a hierarchy item is about to be removed.

virtual void makVrv::DtAggregateEchelonManager::setRecord ( const makArchives::DtAggregateSettingsRecord )
virtual

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

bool makVrv::DtAggregateEchelonManager::destroyed ( DtElementID  ) const
void makVrv::DtAggregateEchelonManager::removeElementPendingDestroyedState ( DtElementID  id)

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

const DtElementIDHierarchy& makVrv::DtAggregateEchelonManager::hierarchy ( ) const
inline

Retrieves the hierarchy.

DtElementIDHierarchy& makVrv::DtAggregateEchelonManager::hierarchy ( )
inline
virtual DtElementIDHierarchyNode::DisplayState makVrv::DtAggregateEchelonManager::expectedDisplayStateFor ( const DtElementIDHierarchyNode node)
protectedvirtual

Will return either hidden or ghosted.

virtual void makVrv::DtAggregateEchelonManager::updateDestroyedState ( DtElementIDHierarchyNode parentNode)
protectedvirtual

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 
)
protectedvirtual

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

Member Data Documentation

boost::signal<void (DtElementID, bool b) > makVrv::DtAggregateEchelonManager::signal_aggregateDestroyedStateChanged
boost::signal<void (DtElementIDHierarchyNode*) > makVrv::DtAggregateEchelonManager::signal_hierarchyItemModified
makArchives::DtAggregateSettingsRecord makVrv::DtAggregateEchelonManager::myAggregateSettings
protected
std::map<DtElementID, bool> makVrv::DtAggregateEchelonManager::myPendingDestroyedStates
protected
DtElementIDHierarchy makVrv::DtAggregateEchelonManager::myHierarchy
protected

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

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)