The factory class used to create and destroy graph objects. More...
#include "murl_graph_i_factory.h"
Public Member Functions | |
virtual Bool | Init ()=0 |
Initialize the factory. More... | |
virtual Bool | DeInit ()=0 |
Deinitialize the factory. More... | |
virtual Bool | SetRoot (IRoot *root)=0 |
Set the graph root object. More... | |
virtual const IRoot * | GetRoot () const =0 |
Get the graph root object. More... | |
virtual IMultiTouchReporter * | CreateMultiTouchReporter (ITouchReporterTarget *touchReporterTarget)=0 |
Create a multi-touch reporter object. More... | |
virtual Bool | DestroyMultiTouchReporter (IMultiTouchReporter *&multiTouchReporter)=0 |
Destroy a multi-touch reporter object. More... | |
virtual INode * | CreateNode (const INode::ClassInfo &classInfo) const =0 |
Create a single node by its class info. More... | |
virtual INode * | CreateNode (const String &className) const =0 |
Create a single node by its class name. More... | |
virtual INode * | CreateNode (const String &className, const IAttributes *attributes, const IAttributes *parameters) const =0 |
Create a single node by its class name, with given attributes and optional parameters. More... | |
virtual INode * | CreateNode (const String &className, const String &baseResourcePath, const IAttributes *attributes, const IAttributes *parameters) const =0 |
Create a single node by its class name, with given base resource path, attributes and optional parameters. More... | |
virtual INode * | CreateGraph (const Resource::IGraph *graphResource, const IAttributes *params) const =0 |
Create a node graph from a given graph resource. More... | |
virtual INode * | CreateGraph (const Resource::IGraphNode *graphResourceNode, const IAttributes *params) const =0 |
Create a node graph from a given graph resource node. More... | |
virtual Bool | DestroyGraph (INode *&rootNode) const =0 |
Recursively destroy a node graph, starting at the given root node. More... | |
virtual Bool | DeserializeNodeAttributes (INode *node, const IAttributes *attributes, const IAttributes *parameters)=0 |
Deserialize a given node from a set of attributes and optional parameters. More... | |
virtual Bool | DeserializeNodeAttributes (INode *node, const String &baseResourcePath, const IAttributes *attributes, const IAttributes *parameters)=0 |
Deserialize a given node from a set of attributes and optional parameters, with a given base resource path. More... | |
virtual IController * | CreateController (const IController::ClassInfo &classInfo, INode *owner) const =0 |
Create a node controller by its class info. More... | |
virtual IController * | CreateController (const String &className, INode *owner) const =0 |
Create a node controller by its class name. More... | |
virtual IController * | CreateController (const String &className, INode *owner, const IAttributes *attributes, const IAttributes *parameters) const =0 |
Create a node controller by its class name, with given attributes and optional parameters. More... | |
virtual IController * | CreateController (const String &className, INode *owner, const String &baseResourcePath, const IAttributes *attributes, const IAttributes *parameters) const =0 |
Create a node controller by its class name, with given base resource path, attributes and optional parameters. More... | |
virtual Bool | DestroyController (IController *&controller) const =0 |
Destroy a given node controller. More... | |
virtual Bool | DeserializeControllerAttributes (IController *controller, const IAttributes *attributes, const IAttributes *parameters)=0 |
Deserialize a given controller from a set of attributes and optional parameters. More... | |
virtual Bool | DeserializeControllerAttributes (IController *controller, const String &baseResourcePath, const IAttributes *attributes, const IAttributes *parameters)=0 |
Deserialize a given controller from a set of attributes and optional parameters. More... | |
Public Member Functions inherited from Murl::Graph::IFactoryRegistry | |
virtual Bool | RegisterNodeClass (const INode::ClassInfo &classInfo)=0 |
Register a node class. More... | |
virtual Bool | UnregisterNodeClass (const INode::ClassInfo &classInfo)=0 |
Unregister a node class. More... | |
virtual SInt32 | GetRegisteredNodeClassInfoIndex (const INode::ClassInfo &classInfo) const =0 |
Get the index of a registered node class, by its class info structure. More... | |
virtual SInt32 | GetRegisteredNodeClassInfoIndex (const String &className) const =0 |
Get the index of a registered node class, by its class name. More... | |
virtual UInt32 | GetNumberOfRegisteredNodeClassInfos () const =0 |
Get the total number of registered node classes. More... | |
virtual const INode::ClassInfo * | GetRegisteredNodeClassInfo (UInt32 index) const =0 |
Get the class info structure of a registered node class at a given index. More... | |
virtual Bool | RegisterControllerClass (const IController::ClassInfo &classInfo)=0 |
Register a controller class. More... | |
virtual Bool | UnregisterControllerClass (const IController::ClassInfo &classInfo)=0 |
Unregister a controller class. More... | |
virtual SInt32 | GetRegisteredControllerClassInfoIndex (const IController::ClassInfo &classInfo) const =0 |
Get the index of a registered controller class, by its class info structure. More... | |
virtual SInt32 | GetRegisteredControllerClassInfoIndex (const String &className) const =0 |
Get the index of a registered controller class, by its class name. More... | |
virtual UInt32 | GetNumberOfRegisteredControllerClassInfos () const =0 |
Get the total number of registered controller classes. More... | |
virtual const IController::ClassInfo * | GetRegisteredControllerClassInfo (UInt32 index) const =0 |
Get the class info structure of a registered controller class at a given index. More... | |
Detailed Description
The factory class used to create and destroy graph objects.
Use the Graph::IFactoryRegistry base interface for managing registered node classes.
Member Function Documentation
◆ Init()
|
pure virtual |
Initialize the factory.
- Returns
- true if successful.
◆ DeInit()
|
pure virtual |
Deinitialize the factory.
- Returns
- true if successful.
◆ SetRoot()
Set the graph root object.
- Parameters
-
root The root object.
- Returns
- true if successful.
◆ GetRoot()
|
pure virtual |
Get the graph root object.
- Returns
- The root object, or null if not set.
◆ CreateMultiTouchReporter()
|
pure virtual |
Create a multi-touch reporter object.
- Parameters
-
touchReporterTarget The ITouchReporterTarget interface.
- Returns
- The created multi-touch reporter object, or null if failed.
◆ DestroyMultiTouchReporter()
|
pure virtual |
Destroy a multi-touch reporter object.
- Parameters
-
multiTouchReporter A reference to the multi-touch reporter pointer. After destruction the pointer is set to null.
- Returns
- true if successful.
◆ CreateNode() [1/4]
|
pure virtual |
Create a single node by its class info.
- Parameters
-
classInfo The class info structure of the node to create.
- Returns
- The newly created node, or null if failed.
◆ CreateNode() [2/4]
Create a single node by its class name.
- Parameters
-
className The class name of the node to create.
- Returns
- The newly created node, or null if failed.
◆ CreateNode() [3/4]
|
pure virtual |
Create a single node by its class name, with given attributes and optional parameters.
- Parameters
-
className The class name of the node to create. attributes The attributes to deserialize. parameters The optional parameters.
- Returns
- The newly created node, or null if failed.
◆ CreateNode() [4/4]
|
pure virtual |
Create a single node by its class name, with given base resource path, attributes and optional parameters.
- Parameters
-
className The class name of the node to create. baseResourcePath The base path for referencing relative resource IDs. attributes The attributes to deserialize. parameters The optional parameters.
- Returns
- The newly created node, or null if failed.
◆ CreateGraph() [1/2]
|
pure virtual |
Create a node graph from a given graph resource.
- Parameters
-
graphResource The graph resource object holding the graph creation template. params Optional parameters used for graph node deserialization, or null if no parameters should be used.
- Returns
- The root node of the newly created graoh, or null if failed.
◆ CreateGraph() [2/2]
|
pure virtual |
Create a node graph from a given graph resource node.
- Parameters
-
graphResourceNode The graph resource node object holding the graph creation template. params Optional parameters used for graph node deserialization, or null if no parameters should be used.
- Returns
- The root node of the newly created graoh, or null if failed.
◆ DestroyGraph()
Recursively destroy a node graph, starting at the given root node.
- Parameters
-
rootNode A reference to the root node pointer. After destruction, the pointer will be set to null.
- Returns
- true if successful.
◆ DeserializeNodeAttributes() [1/2]
|
pure virtual |
Deserialize a given node from a set of attributes and optional parameters.
- Parameters
-
node The node to deserialize. attributes The attributes. parameters The optional parameters.
- Returns
- true if successful.
◆ DeserializeNodeAttributes() [2/2]
|
pure virtual |
Deserialize a given node from a set of attributes and optional parameters, with a given base resource path.
- Parameters
-
node The node to deserialize. baseResourcePath The base path for referencing relative resource IDs. attributes The attributes. parameters The optional parameters.
- Returns
- true if successful.
◆ CreateController() [1/4]
|
pure virtual |
Create a node controller by its class info.
- Parameters
-
classInfo The class info structure of the controller to create. owner The owner node of the controller.
- Returns
- The newly created controller, or null if failed.
◆ CreateController() [2/4]
|
pure virtual |
Create a node controller by its class name.
- Parameters
-
className The class name of the controller to create. owner The owner node of the controller.
- Returns
- The newly created controller, or null if failed.
◆ CreateController() [3/4]
|
pure virtual |
Create a node controller by its class name, with given attributes and optional parameters.
- Parameters
-
className The class name of the controller to create. owner The owner node of the controller. attributes The attributes to deserialize. parameters The optional parameters.
- Returns
- The newly created controller, or null if failed.
◆ CreateController() [4/4]
|
pure virtual |
Create a node controller by its class name, with given base resource path, attributes and optional parameters.
- Parameters
-
className The class name of the controller to create. owner The owner node of the controller. baseResourcePath The base path for referencing relative resource IDs. attributes The attributes to deserialize. parameters The optional parameters.
- Returns
- The newly created controller, or null if failed.
◆ DestroyController()
|
pure virtual |
Destroy a given node controller.
- Parameters
-
controller A reference to the controller pointer. After destruction, the pointer will be set to null.
- Returns
- true if successful.
◆ DeserializeControllerAttributes() [1/2]
|
pure virtual |
Deserialize a given controller from a set of attributes and optional parameters.
- Parameters
-
controller The controller to deserialize. attributes The attributes. parameters The optional parameters.
- Returns
- true if successful.
◆ DeserializeControllerAttributes() [2/2]
|
pure virtual |
Deserialize a given controller from a set of attributes and optional parameters.
- Parameters
-
controller The controller to deserialize. baseResourcePath The base path for referencing relative resource IDs. attributes The attributes. parameters The optional parameters.
- Returns
- true if successful.
The documentation for this interface was generated from the following file:
- murl_graph_i_factory.h