Inheritance diagram for HAPI::Class:
When using the Object Oriented features of HUGIN, Classes must be used for creating the networks. Furthermore, all Classes which are to be used as instances in a given Class must be contained in the same ClassCollection as this.
Classes cannot, however, be used for inference. For this purpose, it is necessary to instantiate the Class into a Domain, which can be used for performing inference.
Public Member Functions | |
Class (ClassCollection *cColl) | |
Create a new Class object, contained in the given ClassCollection. | |
~Class () throw () | |
Destruct a Class object. | |
void | saveAsNet (const std::string &filename) |
std::string | getAttribute (const std::string &key) const |
std::string | getFileName () const |
NodeList | getNodes () const |
Node * | getNodeByName (const std::string &name) const |
NodeList | parseNodes (const std::string &filename, ParseListener *errorHandler) |
void | setAttribute (const std::string &key, const std::string &value) |
void | setLogFile (FILE *log) |
bool | hasAttribute (const std::string &key) const |
std::pair< size_t, size_t > | getNodeSize () const |
void | setNodeSize (size_t width, size_t height) |
AttributeList | getAttributes () const |
void | generateTables () |
void | setName (const std::string &name) |
Set the name of this Class. | |
void | setName (const char *name) |
Set the name of this Class. | |
std::string | getName () |
Retrieve the name of this Class. | |
NodeList | getInputs () const |
Get a list of all Nodes in this Class, which have been added to the inputs of the Class. | |
NodeList | getOutputs () const |
Get a list of all Nodes in this Class, which have been added to the outputs of the Class. | |
NodeList | getInstances () const |
Get a list of all InstanceNodes created from this Class. | |
Domain * | createDomain () const |
Instantiate this Class to a Domain. | |
ClassCollection * | getClassCollection () const |
Return the ClassCollection, in which this Class is contained. |
|
Create a new Class object, contained in the given ClassCollection.
|
|
Instantiate this Class to a Domain. This is required before any inference can be made. This operation will "unfold" the object oriented parts of the network, so that the Domain will be a standard HUGIN Domain. Note: The Nodes in the Domain will not be immediately identifiable as the Nodes from the Class (i.e., they will not have meaningfull names). To determine what Node in the Class a given domain-node is derived from, you should use Node::getSource ().
|
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Return the ClassCollection, in which this Class is contained. A Class can only be contained in a single ClassCollection, so if a given Class definition is needed in more than one ClassCollection, a copy of the Class must be created in each ClassCollection, and changes to one version of the Class will not be reflected in the others.
|
|
Implements HAPI::NetworkModel. |
|
Get a list of all Nodes in this Class, which have been added to the inputs of the Class.
|
|
Get a list of all InstanceNodes created from this Class.
|
|
Retrieve the name of this Class. If no name has been assigned to the Class, one will be automatically generated by HUGIN.
|
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Get a list of all Nodes in this Class, which have been added to the outputs of the Class.
|
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Implements HAPI::NetworkModel. |
|
Set the name of this Class.
|
|
Set the name of this Class.
|
|
Implements HAPI::NetworkModel. |