56 template < GUM_Numeric GUM_SCALAR >
63 template < GUM_Numeric GUM_SCALAR >
84 template < GUM_Numeric GUM_SCALAR >
94 template < GUM_Numeric GUM_SCALAR >
99 template < GUM_Numeric GUM_SCALAR >
104 template < GUM_Numeric GUM_SCALAR >
109 template < GUM_Numeric GUM_SCALAR >
114 template < GUM_Numeric GUM_SCALAR >
119 template < GUM_Numeric GUM_SCALAR >
124 template < GUM_Numeric GUM_SCALAR >
129 template < GUM_Numeric GUM_SCALAR >
134 template < GUM_Numeric GUM_SCALAR >
139 template < GUM_Numeric GUM_SCALAR >
144 template < GUM_Numeric GUM_SCALAR >
149 template < GUM_Numeric GUM_SCALAR >
154 template < GUM_Numeric GUM_SCALAR >
159 template < GUM_Numeric GUM_SCALAR >
164 template < GUM_Numeric GUM_SCALAR >
169 template < GUM_Numeric GUM_SCALAR >
LabelizedVariable & addLabel(std::string_view aLabel)
add a label with a new index (we assume that we will NEVER remove a label)
A PRMClass is an object of a PRM representing a fragment of a Bayesian network which can be instantia...
An PRMInterface is implemented by a Class<GUM_SCALAR> and defines a set of PRMReferenceSlot<GUM_SCALA...
A PRMSystem is a container of PRMInstance and describe a relational skeleton.
This is a decoration of the DiscreteVariable class.
HashTable< std::string, PRMType * > _typeMap_
Mapping of all PRMType given their name.
Set< PRMType * > _types_
Set of all PRMType in this PRM.
PRM()
Default constructor.
const Set< PRMType * > & types() const
Returns the Set of all PRMType in this PRM.
HashTable< std::string, PRMClass< GUM_SCALAR > * > _classMap_
Mapping of all Class<GUM_SCALAR> given their name.
PRMType & type(std::string_view name)
Returns a constant reference on a PRMType given it's name.
bool isType(std::string_view name) const
Set< PRMSystem< GUM_SCALAR > * > _systems_
Set of all Systems in this PRM.
bool isClass(std::string_view name) const
HashTable< std::string, PRMInterface< GUM_SCALAR > * > _interfaceMap_
Mapping of all Class<GUM_SCALAR> given their name.
PRMInterface< GUM_SCALAR > & getInterface(std::string_view name)
Returns a constant reference on a Class<GUM_SCALAR> given it's name.
Set< PRMInterface< GUM_SCALAR > * > _interfaces_
Set of all Class<GUM_SCALAR> in this PRM.
const Set< PRMSystem< GUM_SCALAR > * > & systems() const
Returns the Set of all Systems in this PRM.
void _addBuiltInTypes_()
Add the built-in types in the PRM.
PRMClass< GUM_SCALAR > & getClass(std::string_view name)
Returns a constant reference on a Class<GUM_SCALAR> given it's name.
bool isSystem(std::string_view name) const
const Set< PRMClass< GUM_SCALAR > * > & classes() const
Returns the Set of all Class<GUM_SCALAR> in this PRM.
HashTable< std::string, PRMSystem< GUM_SCALAR > * > _systemMap_
Mapping of all Systems given their name.
Set< PRMClass< GUM_SCALAR > * > _classes_
Set of all Class<GUM_SCALAR> in this PRM.
const Set< PRMInterface< GUM_SCALAR > * > & interfaces() const
Returns the Set of all Class<GUM_SCALAR> in this PRM.
bool isInterface(std::string_view name) const
PRMSystem< GUM_SCALAR > & getSystem(std::string_view name)
Returns a constant reference on a PRMSystem<GUM_SCALAR> given it's name.
namespace for all probabilistic relational models entities
gum is the global namespace for all aGrUM entities