#include <ObjectManager.h>
Inheritance diagram for ObjectManager:
Public Methods | |
ObjectManager () | |
~ObjectManager () | |
WDError | initRef (const char *inFile) |
WDError | initNew (const char *inRootType, const char *inDTD) |
void | release (IManagedObject *inObject) |
void * | getChild (void *inNode, int inIndex) |
void | getType (void *inNode, char *outType, int inMaxLength) |
WDError | setAttribute (void *inNode, const char *inAttribute, const char *inValue) |
WDError | saveToFile (const char *inFileName) |
WDError | getAttribute (void *inNode, const char *inAttribute, char *outValue, int inMaxLength) |
void * | newChildNode (const char *inType, void *inParent) |
int | getChildCount (void *inNode) |
void * | getParentNode (void *inNode) |
WDError | subscribe (IManagedObject *inObject, void *inTargetNode) |
void * | findNode (const char *nodeID, void *inRoot) |
int | getIndex (void *inNode) |
void | registerObject (void *inObject) |
void * | getRoot () |
void | notifyChanged (void *inNode) |
void | notifyChildAdded (void *inStartNode, void *inChildNode) |
void | notifyChildChanged (void *inStartNode, void *inChildNode) |
Private Attributes | |
SubscriberMap * | mSubscriberMap |
void * | mRoot |
list< IManagedObject * > | mNodes |
The ObjectManager implements the services of the IObjectManager using the wdxml services. It is used as a Gateway to access the data, and provide subscription services for the data observers.
|
|
|
|
|
Returns the node with the specified ID searching from the specified root
Implements IObjectManager. |
|
Returns an attribute of the specified data node
Implements IObjectManager. |
|
Returns the child of the specified node at the specified index.
Implements IObjectManager. |
|
Returns the number of child associated with the data node
Implements IObjectManager. |
|
Returns the index of the data node with regard to its parent
Implements IObjectManager. |
|
Returns the parent of the specified data node
Implements IObjectManager. |
|
Returns the root of the database Implements IObjectManager. |
|
Returns the type of the specified data node
Implements IObjectManager. |
|
Creates a new ObjectManager from scratch
|
|
Initializes the ObjectManager from an XML file
|
|
Creates a new node in the database
Implements IObjectManager. |
|
Notifies the observers that the data node has changed
Implements IObjectManager. |
|
Notifies the observers that a child was added to the node or to a child of the node
Implements IObjectManager. |
|
Notifies the observers that a child to the node or to a child of the node has changed
Implements IObjectManager. |
|
Temporary hack - we need to have at least one ManagedObject of for each node loaded in memory all the time - and I don't feel like telling you why. Go ask Etienne instead... Implements IObjectManager. |
|
Removes an IManagedObject from the subscriber list
Implements IObjectManager. |
|
Saves the database to a file
Implements IObjectManager. |
|
Sets an attribute of the specified data node
Implements IObjectManager. |
|
Subscribes the observer to the data node
Implements IObjectManager. |
|
Temporary Hack - We needed to keep at least one copy of each ManagedObjects referencing another ManagedObject. |
|
Root node (the Scenario) |
|
Used to store the Observers |