![]() |
aGrUM
0.16.0
|
A PRMSystem is a container of PRMInstance and describe a relational skeleton. More...
#include <PRMObject.h>
Public Member Functions | |
Constructors & destructor. | |
PRMSystem (const std::string &name) | |
Default constructor. More... | |
virtual | ~PRMSystem () |
Destructor. More... | |
Getters & setters over the relational skeleton. | |
const DiGraph & | skeleton () const |
Returns the relation skeleton of this PRMSystem. More... | |
PRMInstance< GUM_SCALAR > & | get (NodeId id) |
Returns an PRMInstance given it's NodeId in the relational skeleton. More... | |
const PRMInstance< GUM_SCALAR > & | get (NodeId id) const |
Returns an PRMInstance given it's NodeId in the relational skeleton. More... | |
NodeId | get (const PRMInstance< GUM_SCALAR > &i) const |
Returns the relation skeleton of this PRMSystem. More... | |
Getters & setters over PRMInstance and array of PRMInstance. | |
virtual PRMObject::prm_type | obj_type () const |
Returns the PRM type of this object. More... | |
Size | size () const |
Returns the number of PRMInstance in this PRMSystem. More... | |
bool | exists (const std::string &name) const |
Retruns true either if name is an instance or an array in this PRMSystem. More... | |
bool | isInstantiated (const PRMClass< GUM_SCALAR > &c) const |
Returns true if the given Class<GUM_SCALAR> has at least one PRMInstance in this PRMSystem. More... | |
bool | isInstance (const std::string &name) const |
Returns true if an PRMInstance with the given name exists. More... | |
bool | isArray (const std::string &name) const |
Returns true if an array with the given name exists. More... | |
void | groundedBN (BayesNetFactory< GUM_SCALAR > &factory) const |
Returns the grounded Bayesian Network of this system. More... | |
void | instantiate () |
Instantiate all the PRMInstance in this PRMSystem. More... | |
PRMInstance handling. | |
PRMInstance< GUM_SCALAR > & | get (const std::string &name) |
Returns a reference over an PRMInstance given it's name. More... | |
const PRMInstance< GUM_SCALAR > & | get (const std::string &name) const |
Returns a constant reference over an PRMInstance given it's name. More... | |
const Set< PRMInstance< GUM_SCALAR > *> & | get (const PRMClass< GUM_SCALAR > &type) const |
Returns the sequence of all instances of the given type. More... | |
NodeId | add (PRMInstance< GUM_SCALAR > *i) |
Add an PRMInstance to this system. More... | |
Array handling. | |
const Sequence< PRMInstance< GUM_SCALAR > *> & | getArray (const std::string &name) const |
Returns the sequence of instances of a given array. More... | |
PRMClassElementContainer< GUM_SCALAR > & | getArrayType (const std::string &name) |
Returns the type of the given array. More... | |
const PRMClassElementContainer< GUM_SCALAR > & | getArrayType (const std::string &name) const |
Returns the type of the given array. More... | |
NodeId | add (const std::string &array, PRMInstance< GUM_SCALAR > *i) |
Add an PRMInstance to an array in this system. If the array doesn't exists it is created. More... | |
NodeId | add (const std::string &array, PRMInstance< GUM_SCALAR > &i) |
Add an PRMInstance to an array in this system. If the array doesn't exists it is created. More... | |
void | addArray (const std::string &array, PRMClassElementContainer< GUM_SCALAR > &type) |
Add an array of instances in this system. If the array doesn't exists it is created. More... | |
Getters & setters. | |
const std::string & | name () const |
Returns the name of this object. More... | |
void | name (const std::string &name) |
Change the name of the PRM Object. More... | |
Operators | |
bool | operator== (const PRMObject &obj) const |
To PRMObject are equal if they have the same name (which is unique). More... | |
bool | operator!= (const PRMObject &obj) const |
To PRMObject are equal if they have the same name (which is unique). More... | |
Built-in types. | |
enum | prm_type : char { prm_type::ALL, prm_type::CLASS, prm_type::PRM_INTERFACE, prm_type::CLASS_ELT, prm_type::TYPE, prm_type::SYSTEM, prm_type::INSTANCE } |
Enumeration of the different types of objects handled by a PRM. More... | |
static std::string | LEFT_CAST () |
Enumeration of the different types of objects handled by a PRM. More... | |
static std::string | RIGHT_CAST () |
Enumeration of the different types of objects handled by a PRM. More... | |
static std::string | enum2str (prm_type type) |
Returns the string representation of a PRMObject. More... | |
static INLINE bool | isClass (const PRMObject &obj) |
Returns true if obj_ptr is of type Class. More... | |
static INLINE bool | isInterface (const PRMObject &obj) |
Returns true if obj_ptr is of type PRMInterface. More... | |
static INLINE bool | isInstance (const PRMObject &obj) |
Returns true if obj_ptr is of type PRMInstance. More... | |
Iterators. | |
typedef NodeProperty< PRMInstance< GUM_SCALAR > *>::iterator | iterator |
Iterator over the PRMInstance of this PRMSystem. More... | |
typedef NodeProperty< PRMInstance< GUM_SCALAR > *>::const_iterator | const_iterator |
Constant Iterator over the PRMInstance of this PRMSystem. More... | |
typedef Sequence< PRMInstance< GUM_SCALAR > *>::iterator | array_iterator |
Iterator over the PRMInstance in an array in this PRMSystem. More... | |
typedef Sequence< PRMInstance< GUM_SCALAR > *>::const_iterator | const_array_iterator |
Iterator over the PRMInstance in an array in this PRMSystem. More... | |
iterator | begin () |
Returns an iterator over the instances in this system. More... | |
const iterator & | end () |
Returns a iterator at the end of the set of PRMInstance in this PRMSystem. More... | |
const_iterator | begin () const |
Returns a constant iterator over the instances in this system. More... | |
const const_iterator & | end () const |
Returns a constant iterator at the end of the set of PRMInstance in this PRMSystem. More... | |
array_iterator | begin (const std::string &a) |
Returns an iterator at the beginning of the Sequence of PRMInstance in the array named a;. More... | |
const array_iterator & | end (const std::string &a) |
Returns an iterator at the end of the Sequence of PRMInstance in the array named a. More... | |
const_array_iterator | begin (const std::string &a) const |
Returns an iterator at the beginning of the Sequence of PRMInstance in the array named a;. More... | |
const const_array_iterator & | end (const std::string &a) const |
Returns an iterator at the end of the Sequence of PRMInstance in the array named a. More... | |
Private PRMInstance handling methods and members. | |
typedef std::pair< PRMClassElementContainer< GUM_SCALAR > *, Sequence< PRMInstance< GUM_SCALAR > *> *> | model_pair |
Typedef of the pair of a Class<GUM_SCALAR> and the sequence of it's instantiation. More... | |
DiGraph | __skeleton |
The relational skeleton of this PRMSystem. More... | |
NodeProperty< PRMInstance< GUM_SCALAR > *> | __nodeIdMap |
The maping between PRMInstance and their NodeId in the relational skeleton of this PRMSystem. More... | |
HashTable< std::string, PRMInstance< GUM_SCALAR > *> | __nameMap |
The mapping between PRMInstance and their names. More... | |
HashTable< PRMClass< GUM_SCALAR > *, Set< PRMInstance< GUM_SCALAR > *> *> | __instanceMap |
Mapping between a class and all it's PRMInstance in this system. More... | |
HashTable< std::string, model_pair > | __arrayMap |
Mapping between arrays and their name. The first element of the pair is the type of the array. More... | |
A PRMSystem is a container of PRMInstance and describe a relational skeleton.
Definition at line 229 of file PRMObject.h.
typedef Sequence< PRMInstance< GUM_SCALAR >* >::iterator gum::prm::PRMSystem< GUM_SCALAR >::array_iterator |
Iterator over the PRMInstance in an array in this PRMSystem.
Definition at line 236 of file PRMSystem.h.
typedef Sequence< PRMInstance< GUM_SCALAR >* >::const_iterator gum::prm::PRMSystem< GUM_SCALAR >::const_array_iterator |
Iterator over the PRMInstance in an array in this PRMSystem.
Definition at line 250 of file PRMSystem.h.
typedef NodeProperty< PRMInstance< GUM_SCALAR >* >::const_iterator gum::prm::PRMSystem< GUM_SCALAR >::const_iterator |
Constant Iterator over the PRMInstance of this PRMSystem.
Definition at line 225 of file PRMSystem.h.
typedef NodeProperty< PRMInstance< GUM_SCALAR >* >::iterator gum::prm::PRMSystem< GUM_SCALAR >::iterator |
Iterator over the PRMInstance of this PRMSystem.
Definition at line 214 of file PRMSystem.h.
|
private |
Typedef of the pair of a Class<GUM_SCALAR> and the sequence of it's instantiation.
Definition at line 293 of file PRMSystem.h.
|
stronginherited |
Enumeration of the different types of objects handled by a PRM.
The "all" type is used to tell that we want any kind of PRMType (useful with iterators for example). No PRMObject will ever have "all" as type.
Enumerator | |
---|---|
ALL | |
CLASS | |
PRM_INTERFACE | |
CLASS_ELT | |
TYPE | |
SYSTEM | |
INSTANCE |
Definition at line 69 of file PRMObject.h.
|
explicit |
Default constructor.
Definition at line 40 of file PRMSystem_tpl.h.
|
virtual |
Destructor.
Definition at line 45 of file PRMSystem_tpl.h.
|
private |
Copy constructor. Don't use it.
|
private |
Ground an aggregator with the given name in the grounded IBayesNet.
elt | The aggregator grounded. |
name | The aggregator's name in the grounded IBayesNet. |
factory | The factory used to build the grounded IBayesNet. |
Definition at line 139 of file PRMSystem_tpl.h.
|
private |
Method which ground Atttributes and Aggregators of an PRMInstance.
instance | The PRMInstance grounded by this method. |
factory | The factory used to build the grounded IBayesNet. |
Definition at line 102 of file PRMSystem_tpl.h.
|
private |
Method which copy node's Potential of an PRMInstance to the grounded Bayesian Network.
instance | The PRMInstance currently grounded. |
attr | The PRMAttribute<GUM_SCALAR> for which the Potential is grounded. |
factory | The factory used to build the grounded IBayesNet. |
Definition at line 272 of file PRMSystem_tpl.h.
|
private |
Method which ground PRMReferenceSlot of an PRMInstance and add arcs in the IBayesNet.
instance | The PRMInstance grounded by this method. |
factory | The factory used to build the grounded IBayesNet. |
Definition at line 218 of file PRMSystem_tpl.h.
NodeId gum::prm::PRMSystem< GUM_SCALAR >::add | ( | PRMInstance< GUM_SCALAR > * | i | ) |
Add an PRMInstance to this system.
DuplicateElement | Raised if an PRMInstance with the same name already exists. |
Definition at line 59 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMFactory< GUM_SCALAR >::addArray(), gum::prm::PRMFactory< GUM_SCALAR >::incArray(), and gum::O3prmBNReader< GUM_SCALAR >::proceed().
INLINE NodeId gum::prm::PRMSystem< GUM_SCALAR >::add | ( | const std::string & | array, |
PRMInstance< GUM_SCALAR > * | i | ||
) |
Add an PRMInstance to an array in this system. If the array doesn't exists it is created.
TypeError | Raised if i is not of the good type. |
DuplicateElement | Raised if an PRMInstance with same name already exists. |
Definition at line 472 of file PRMSystem_tpl.h.
INLINE NodeId gum::prm::PRMSystem< GUM_SCALAR >::add | ( | const std::string & | array, |
PRMInstance< GUM_SCALAR > & | i | ||
) |
Add an PRMInstance to an array in this system. If the array doesn't exists it is created.
TypeError | Raised if i is not of the good type. |
DuplicateElement | Raised if an PRMInstance with same name already exists. |
Definition at line 334 of file PRMSystem_tpl.h.
INLINE void gum::prm::PRMSystem< GUM_SCALAR >::addArray | ( | const std::string & | array, |
PRMClassElementContainer< GUM_SCALAR > & | type | ||
) |
Add an array of instances in this system. If the array doesn't exists it is created.
DuplicateElement | Raised if an existing array with the same name already exists. |
Definition at line 490 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMFactory< GUM_SCALAR >::addArray().
INLINE PRMSystem< GUM_SCALAR >::iterator gum::prm::PRMSystem< GUM_SCALAR >::begin | ( | ) |
Returns an iterator over the instances in this system.
Definition at line 504 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMSystem< double >::begin(), and gum::prm::gspan::InterfaceGraph< GUM_SCALAR >::InterfaceGraph().
INLINE PRMSystem< GUM_SCALAR >::const_iterator gum::prm::PRMSystem< GUM_SCALAR >::begin | ( | ) | const |
Returns a constant iterator over the instances in this system.
Definition at line 516 of file PRMSystem_tpl.h.
INLINE PRMSystem< GUM_SCALAR >::array_iterator gum::prm::PRMSystem< GUM_SCALAR >::begin | ( | const std::string & | a | ) |
Returns an iterator at the beginning of the Sequence of PRMInstance in the array named a;.
NotFound | Raised if no array matches a. |
Definition at line 528 of file PRMSystem_tpl.h.
INLINE PRMSystem< GUM_SCALAR >::const_array_iterator gum::prm::PRMSystem< GUM_SCALAR >::begin | ( | const std::string & | a | ) | const |
Returns an iterator at the beginning of the Sequence of PRMInstance in the array named a;.
NotFound | Raised if no array matches a. |
Definition at line 548 of file PRMSystem_tpl.h.
INLINE const PRMSystem< GUM_SCALAR >::iterator & gum::prm::PRMSystem< GUM_SCALAR >::end | ( | ) |
Returns a iterator at the end of the set of PRMInstance in this PRMSystem.
Definition at line 510 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMSystem< double >::end(), and gum::prm::gspan::InterfaceGraph< GUM_SCALAR >::InterfaceGraph().
INLINE const PRMSystem< GUM_SCALAR >::const_iterator & gum::prm::PRMSystem< GUM_SCALAR >::end | ( | ) | const |
Returns a constant iterator at the end of the set of PRMInstance in this PRMSystem.
Definition at line 522 of file PRMSystem_tpl.h.
INLINE const PRMSystem< GUM_SCALAR >::array_iterator & gum::prm::PRMSystem< GUM_SCALAR >::end | ( | const std::string & | a | ) |
Returns an iterator at the end of the Sequence of PRMInstance in the array named a.
NotFound | Raised if no array matches a. |
Definition at line 538 of file PRMSystem_tpl.h.
INLINE const PRMSystem< GUM_SCALAR >::const_array_iterator & gum::prm::PRMSystem< GUM_SCALAR >::end | ( | const std::string & | a | ) | const |
Returns an iterator at the end of the Sequence of PRMInstance in the array named a.
NotFound | Raised if no array matches a. |
Definition at line 558 of file PRMSystem_tpl.h.
|
inlinestaticinherited |
Returns the string representation of a PRMObject.
Definition at line 83 of file PRMObject.h.
References gum::prm::PRMObject::CLASS, gum::prm::PRMObject::CLASS_ELT, gum::prm::PRMObject::INSTANCE, gum::prm::PRMObject::PRM_INTERFACE, gum::prm::PRMObject::SYSTEM, and gum::prm::PRMObject::TYPE.
Referenced by gum::prm::operator<<().
INLINE bool gum::prm::PRMSystem< GUM_SCALAR >::exists | ( | const std::string & | name | ) | const |
Retruns true either if name is an instance or an array in this PRMSystem.
Definition at line 567 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMSystem< double >::exists(), gum::prm::o3prmr::O3prmrInterpreter::findInstanceName(), gum::prm::PRMSystem< double >::isArray(), gum::prm::PRMSystem< double >::isInstance(), and gum::prm::PRMSystem< double >::isInstantiated().
INLINE PRMInstance< GUM_SCALAR > & gum::prm::PRMSystem< GUM_SCALAR >::get | ( | NodeId | id | ) |
Returns an PRMInstance given it's NodeId in the relational skeleton.
NotFound | Raised if no PRMInstance matches the given NodeId. |
Definition at line 345 of file PRMSystem_tpl.h.
Referenced by gum::prm::o3prmr::O3prmrInterpreter::checkObserve(), gum::prm::o3prmr::O3prmrInterpreter::checkQuery(), gum::prm::o3prmr::O3prmrInterpreter::checkUnobserve(), and gum::prm::PRMFactory< GUM_SCALAR >::incArray().
INLINE const PRMInstance< GUM_SCALAR > & gum::prm::PRMSystem< GUM_SCALAR >::get | ( | NodeId | id | ) | const |
Returns an PRMInstance given it's NodeId in the relational skeleton.
NotFound | Raised if no PRMInstance matches the given NodeId. |
Definition at line 355 of file PRMSystem_tpl.h.
INLINE NodeId gum::prm::PRMSystem< GUM_SCALAR >::get | ( | const PRMInstance< GUM_SCALAR > & | i | ) | const |
Returns the relation skeleton of this PRMSystem.
Definition at line 365 of file PRMSystem_tpl.h.
INLINE PRMInstance< GUM_SCALAR > & gum::prm::PRMSystem< GUM_SCALAR >::get | ( | const std::string & | name | ) |
Returns a reference over an PRMInstance given it's name.
NotFound | Raised if the no PRMInstance matches name. |
Definition at line 409 of file PRMSystem_tpl.h.
INLINE const PRMInstance< GUM_SCALAR > & gum::prm::PRMSystem< GUM_SCALAR >::get | ( | const std::string & | name | ) | const |
Returns a constant reference over an PRMInstance given it's name.
NotFound | Raised if the no PRMInstance matches name. |
Definition at line 420 of file PRMSystem_tpl.h.
INLINE const Set< PRMInstance< GUM_SCALAR > *> & gum::prm::PRMSystem< GUM_SCALAR >::get | ( | const PRMClass< GUM_SCALAR > & | type | ) | const |
Returns the sequence of all instances of the given type.
NotFound | Raised if there is instantiation of type. |
Definition at line 431 of file PRMSystem_tpl.h.
INLINE const Sequence< PRMInstance< GUM_SCALAR > *> & gum::prm::PRMSystem< GUM_SCALAR >::getArray | ( | const std::string & | name | ) | const |
Returns the sequence of instances of a given array.
NotFound | Raised if no array matches name. |
Definition at line 443 of file PRMSystem_tpl.h.
INLINE PRMClassElementContainer< GUM_SCALAR > & gum::prm::PRMSystem< GUM_SCALAR >::getArrayType | ( | const std::string & | name | ) |
Returns the type of the given array.
NotFound | Raised if no array matches name. |
Definition at line 453 of file PRMSystem_tpl.h.
INLINE const PRMClassElementContainer< GUM_SCALAR > & gum::prm::PRMSystem< GUM_SCALAR >::getArrayType | ( | const std::string & | name | ) | const |
Returns the type of the given array.
NotFound | Raised if no array matches name. |
Definition at line 463 of file PRMSystem_tpl.h.
void gum::prm::PRMSystem< GUM_SCALAR >::groundedBN | ( | BayesNetFactory< GUM_SCALAR > & | factory | ) | const |
Returns the grounded Bayesian Network of this system.
factory | The factory used to build the grounded Bayesian Network. |
Definition at line 82 of file PRMSystem_tpl.h.
Referenced by gum::O3prmBNReader< GUM_SCALAR >::__generateBN(), and gum::prm::o3prmr::O3prmrInterpreter::generateInfEngine().
INLINE void gum::prm::PRMSystem< GUM_SCALAR >::instantiate | ( | ) |
Instantiate all the PRMInstance in this PRMSystem.
Definition at line 401 of file PRMSystem_tpl.h.
Referenced by gum::O3prmBNReader< GUM_SCALAR >::__generateBN(), gum::prm::PRMFactory< GUM_SCALAR >::endSystem(), and gum::prm::PRMSystem< double >::instantiate().
INLINE bool gum::prm::PRMSystem< GUM_SCALAR >::isArray | ( | const std::string & | name | ) | const |
Returns true if an array with the given name exists.
Definition at line 396 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMFactory< GUM_SCALAR >::incArray(), and gum::prm::PRMFactory< GUM_SCALAR >::isArrayInCurrentSystem().
Returns true if obj_ptr is of type Class.
Definition at line 102 of file PRMObject.h.
References gum::prm::PRMObject::CLASS, and gum::prm::PRMObject::obj_type().
Referenced by gum::prm::PRMFactory< GUM_SCALAR >::startAttribute().
Returns true if obj_ptr is of type PRMInstance.
Definition at line 112 of file PRMObject.h.
References gum::prm::PRMObject::INSTANCE, gum::prm::PRMObject::name(), gum::prm::PRMObject::obj_type(), gum::prm::PRMObject::operator!=(), gum::prm::PRMObject::operator=(), gum::prm::PRMObject::operator==(), gum::prm::PRMObject::PRMObject(), and gum::prm::PRMObject::~PRMObject().
INLINE bool gum::prm::PRMSystem< GUM_SCALAR >::isInstance | ( | const std::string & | name | ) | const |
Returns true if an PRMInstance with the given name exists.
Definition at line 391 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMFactory< GUM_SCALAR >::incArray().
INLINE bool gum::prm::PRMSystem< GUM_SCALAR >::isInstantiated | ( | const PRMClass< GUM_SCALAR > & | c | ) | const |
Returns true if the given Class<GUM_SCALAR> has at least one PRMInstance in this PRMSystem.
Definition at line 384 of file PRMSystem_tpl.h.
Returns true if obj_ptr is of type PRMInterface.
Definition at line 107 of file PRMObject.h.
References gum::prm::PRMObject::obj_type(), and gum::prm::PRMObject::PRM_INTERFACE.
|
inlinestaticinherited |
Enumeration of the different types of objects handled by a PRM.
The "all" type is used to tell that we want any kind of PRMType (useful with iterators for example). No PRMObject will ever have "all" as type.
Definition at line 79 of file PRMObject.h.
Referenced by gum::prm::decomposePath(), gum::prm::PRMFormAttribute< GUM_SCALAR >::PRMFormAttribute(), and gum::prm::PRMScalarAttribute< GUM_SCALAR >::PRMScalarAttribute().
|
inherited |
Returns the name of this object.
Definition at line 35 of file PRMObject_inl.h.
References gum::prm::PRMObject::__name.
Referenced by gum::prm::SVE< GUM_SCALAR >::__addDelayedVariable(), gum::prm::PRMClass< double >::__addIOInterfaceFlags(), gum::prm::PRMFactory< GUM_SCALAR >::__addParent(), gum::prm::PRMInstance< GUM_SCALAR >::__addReferingInstance(), gum::prm::PRMClass< double >::__checkInterface(), gum::prm::PRMFactory< GUM_SCALAR >::__checkInterfaceImplementation(), gum::prm::PRMClass< double >::__checkInterfaces(), gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkRawCPT(), gum::prm::PRMClass< double >::__checkRefInterface(), gum::prm::PRMClass< double >::__checkRefInterfaces(), gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkRuleCPTSumsTo1(), gum::prm::PRMInstance< GUM_SCALAR >::__copyAggregates(), gum::prm::PRMInstance< GUM_SCALAR >::__copyAttribute(), gum::prm::PRMSlotChain< double >::__copyLastElt(), gum::prm::PRMSystem< double >::__groundAttr(), gum::prm::PRMSystem< double >::__groundPotential(), gum::prm::PRMSystem< double >::__groundRef(), gum::prm::PRMClass< double >::__inheritClass(), gum::prm::PRMInterface< double >::__overloadAttribute(), gum::prm::PRMClass< double >::__overloadAttribute(), gum::prm::PRMClass< double >::__overloadParameter(), gum::prm::PRMClass< double >::__overloadReference(), gum::prm::PRMInterface< double >::__overloadReferenceSlot(), gum::prm::__print_attribute__(), gum::prm::__print_instance__(), gum::prm::gspan::StrictSearch< GUM_SCALAR >::__str(), gum::prm::StructuredInference< GUM_SCALAR >::__str(), gum::prm::PRMInterface< double >::add(), gum::prm::PRMSystem< double >::add(), gum::prm::PRMClass< double >::add(), gum::prm::PRMFactory< GUM_SCALAR >::addAggregator(), gum::prm::PRMFormAttribute< GUM_SCALAR >::addParent(), gum::prm::PRMScalarAttribute< GUM_SCALAR >::addParent(), gum::prm::PRMFormAttribute< GUM_SCALAR >::copy(), gum::prm::PRMScalarAttribute< GUM_SCALAR >::copy(), gum::prm::o3prmr::O3prmrInterpreter::findAttributeName(), gum::prm::o3prmr::O3prmrInterpreter::findInstanceName(), gum::prm::PRMFormAttribute< GUM_SCALAR >::getCastDescendant(), gum::prm::PRMScalarAttribute< GUM_SCALAR >::getCastDescendant(), gum::prm::PRMClass< double >::inheritAggregates(), gum::prm::PRMClass< double >::isCastDescendant(), gum::prm::PRMObject::isInstance(), gum::prm::PRMObject::name(), gum::prm::PRMType::name(), gum::prm::PRMFormAttribute< GUM_SCALAR >::newFactory(), gum::prm::PRMScalarAttribute< GUM_SCALAR >::newFactory(), gum::prm::PRMType::operator!=(), gum::prm::PRMObject::operator!=(), operator<<(), gum::prm::PRMType::operator==(), gum::prm::PRMObject::operator==(), gum::prm::PRMClass< double >::overload(), gum::prm::PRMInterface< double >::overload(), gum::prm::PRMFormAttribute< GUM_SCALAR >::PRMFormAttribute(), gum::prm::PRMReferenceSlot< double >::PRMReferenceSlot(), gum::prm::PRMScalarAttribute< GUM_SCALAR >::PRMScalarAttribute(), gum::prm::PRMFactory< GUM_SCALAR >::startClass(), gum::prm::PRMFactory< GUM_SCALAR >::startInterface(), gum::prm::PRMFactory< GUM_SCALAR >::startSystem(), and gum::prm::PRMAggregate< double >::str2enum().
|
inherited |
Change the name of the PRM Object.
Definition at line 39 of file PRMObject_inl.h.
References gum::prm::PRMObject::__name, and gum::prm::PRMObject::name().
|
virtual |
Returns the PRM type of this object.
Implements gum::prm::PRMObject.
Definition at line 374 of file PRMSystem_tpl.h.
To PRMObject are equal if they have the same name (which is unique).
Definition at line 49 of file PRMObject_inl.h.
References gum::prm::PRMObject::__name, and gum::prm::PRMObject::name().
Referenced by gum::prm::PRMObject::isInstance().
|
private |
Copy operator. Don't use it.
To PRMObject are equal if they have the same name (which is unique).
Definition at line 43 of file PRMObject_inl.h.
References gum::prm::PRMObject::__name, and gum::prm::PRMObject::name().
Referenced by gum::prm::PRMObject::isInstance().
|
inlinestaticinherited |
Enumeration of the different types of objects handled by a PRM.
The "all" type is used to tell that we want any kind of PRMType (useful with iterators for example). No PRMObject will ever have "all" as type.
Definition at line 80 of file PRMObject.h.
Referenced by gum::prm::decomposePath(), gum::prm::PRMFormAttribute< GUM_SCALAR >::PRMFormAttribute(), and gum::prm::PRMScalarAttribute< GUM_SCALAR >::PRMScalarAttribute().
INLINE Size gum::prm::PRMSystem< GUM_SCALAR >::size | ( | ) | const |
Returns the number of PRMInstance in this PRMSystem.
Definition at line 379 of file PRMSystem_tpl.h.
Referenced by gum::prm::PRMSystem< double >::size().
INLINE const DiGraph & gum::prm::PRMSystem< GUM_SCALAR >::skeleton | ( | ) | const |
Returns the relation skeleton of this PRMSystem.
Definition at line 340 of file PRMSystem_tpl.h.
|
private |
Mapping between arrays and their name. The first element of the pair is the type of the array.
Definition at line 297 of file PRMSystem.h.
|
private |
Mapping between a class and all it's PRMInstance in this system.
Definition at line 287 of file PRMSystem.h.
|
private |
The mapping between PRMInstance and their names.
Definition at line 283 of file PRMSystem.h.
|
private |
The maping between PRMInstance and their NodeId in the relational skeleton of this PRMSystem.
Definition at line 280 of file PRMSystem.h.
|
private |
The relational skeleton of this PRMSystem.
Definition at line 276 of file PRMSystem.h.