49#ifndef GUM_REFERENCE_SLOT_H
50#define GUM_REFERENCE_SLOT_H
79 template <
typename GUM_SCALAR >
153 virtual Tensor< GUM_SCALAR >&
cpf();
157 virtual const Tensor< GUM_SCALAR >&
cpf()
const;
193#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
Headers of gum::prm::PRMClassElementContainer.
Headers of gum::PRMClassElement.
Inline implementation of gum::PRMReferenceSlot.
PRMAttribute is a member of a Class in a PRM.
<agrum/PRM/classElementContainer.h>
PRMClassElement(const std::string &name)
Default constructor of a PRMClassElement.
ClassElementType
Returns true if obj_ptr is of type PRMReferenceSlot.
const std::string & name() const
Returns the name of this object.
PRMClassElementContainer< GUM_SCALAR > & slotType()
Returns the type of this slot, which is a PRMClassElementContainer (it is not the type of PRMObject).
PRMReferenceSlot & operator=(const PRMReferenceSlot< GUM_SCALAR > &from)
Copy operator. Don't use it.
PRMReferenceSlot(const std::string &name, PRMClassElementContainer< GUM_SCALAR > &type, bool isArray=false)
Default constructor.
bool _isArray_
Flag indicating if this slot is an array.
virtual void addChild(const PRMClassElement< GUM_SCALAR > &elt)
See gum::PRMClassElement::addChild().
PRMClassElementContainer< GUM_SCALAR > & _slotType_
The type of this PRMReferenceSlot.
virtual void addParent(const PRMClassElement< GUM_SCALAR > &elt)
See gum::PRMClassElement::addParent().
virtual ~PRMReferenceSlot()
Destructor.
virtual PRMClassElement< GUM_SCALAR >::ClassElementType elt_type() const
Implementation of the pure virtual method of PRMObject.
bool isArray() const
Returns true if this reference slot is an array.
virtual PRMAttribute< GUM_SCALAR > * getCastDescendant() const
Raise an OperationNotAllowed. See gum::PRMClassElement::getCastDescendant().
virtual Tensor< GUM_SCALAR > & cpf()
Raise an OperationNotAllowed. See gum::PRMClassElement::cpf().
virtual PRMType & type()
Raise an OperationNotAllowed. See gum::PRMClassElement::type().
This is a decoration of the DiscreteVariable class.
namespace for all probabilistic relational models entities
gum is the global namespace for all aGrUM entities