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

makVrv::DtSettingsChangeManager class will manage change objects that listen to various system signals and perform changes to classes based on those signals. More...

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

List of all members.

Public Types

typedef boost::function< bool(const
std::string
&, DtSettingsChangeObject::UseType)> 
DtSettingInUseFunction
typedef std::vector
< DtSettingInUseFunction
DtSettingsInUse
typedef std::vector
< DtSettingsChangeObject * > 
DtSettingsChangedList

Public Member Functions

virtual ~DtSettingsChangeManager ()
virtual void addSettingsChangeObject (DtSettingsChangeObject *)
 Once the new settings change type is added, this class will take ownership of the memory and will delete it if replaced by a like settings change type.
virtual void removeSettingsChangeObject (DtSettingsChangeObject *)
 Removes settings change object. Memory for that object will be freed.
virtual DtSettingsChangedList changeObjectsFor (DtSettingsChangeObject::SettingsChangeType) const
 Returns a list of all objects of a given type.
virtual void addSettingInUseCheck (const DtSettingInUseFunction &f)
 When checking to see if a particular setting is in use, this function will be called as a check.
virtual bool settingInUse (const std::string &setting, DtSettingsChangeObject::UseType) const
 Checks all settings in use function and returns true on the first match.

Static Public Member Functions

static DtSettingsChangeManagerinstance (DtDe &de)
 Get an instance of the settings manager.
static std::string className ()

Protected Types

typedef std::map
< DtSettingsChangeObject::SettingsChangeType,
DtSettingsChangedList
DtSettingsChangedMap

Protected Member Functions

virtual void settingsObjectInvoked (DtSettingsChangeObject *)
 Called when a status object has been invoked, emit signal through signaler.
 DtSettingsChangeManager (DtDe &)
 CTOR.

Protected Attributes

DtSettingsChangedMap mySettings
DtSettingsInUse mySettingsInUseChecks
DtDemyDe
boost::mutex myMonitor

Detailed Description

makVrv::DtSettingsChangeManager class will manage change objects that listen to various system signals and perform changes to classes based on those signals.

An example of this is the DtSchemaRenamedChange class. When a schema is renamed, this class will make sure to do the appropriate changes to the appropriate classes (e.g. rename the schema of a model definition). Each change class will have a type that other classes can use to hook into this manager for to get notified when something changes.

While this class is, itself, threadsafe. It might contain objects that are not (the schema renaming one, as an example).


Member Typedef Documentation


Constructor & Destructor Documentation

CTOR.


Member Function Documentation

Get an instance of the settings manager.

Once the new settings change type is added, this class will take ownership of the memory and will delete it if replaced by a like settings change type.

Removes settings change object. Memory for that object will be freed.

Returns a list of all objects of a given type.

static std::string makVrv::DtSettingsChangeManager::className ( ) [static]

When checking to see if a particular setting is in use, this function will be called as a check.

virtual bool makVrv::DtSettingsChangeManager::settingInUse ( const std::string &  setting,
DtSettingsChangeObject::UseType   
) const [virtual]

Checks all settings in use function and returns true on the first match.

Called when a status object has been invoked, emit signal through signaler.


Member Data Documentation

boost::mutex makVrv::DtSettingsChangeManager::myMonitor [mutable, protected]

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)