30 #ifndef GUM_REFERENCE_SLOT_H 31 #define GUM_REFERENCE_SLOT_H 60 template <
typename GUM_SCALAR >
61 class PRMReferenceSlot :
public PRMClassElement< GUM_SCALAR > {
76 PRMClassElementContainer< GUM_SCALAR >&
type,
100 PRMClassElementContainer< GUM_SCALAR >&
slotType();
106 const PRMClassElementContainer< GUM_SCALAR >&
slotType()
const;
114 virtual void addParent(
const PRMClassElement< GUM_SCALAR >& elt);
117 virtual void addChild(
const PRMClassElement< GUM_SCALAR >& elt);
127 virtual PRMType&
type();
131 virtual const PRMType&
type()
const;
135 virtual Potential< GUM_SCALAR >&
cpf();
139 virtual const Potential< GUM_SCALAR >&
cpf()
const;
174 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS bool isArray() const
Returns true if this reference slot is an array.
virtual ~PRMReferenceSlot()
Destructor.
virtual Potential< GUM_SCALAR > & cpf()
Raise an OperationNotAllowed. See gum::PRMClassElement::cpf().
const std::string & name() const
Returns the name of this object.
PRMReferenceSlot & operator=(const PRMReferenceSlot< GUM_SCALAR > &from)
Copy operator. Don't use it.
virtual void addParent(const PRMClassElement< GUM_SCALAR > &elt)
See gum::PRMClassElement::addParent().
PRMClassElementContainer< GUM_SCALAR > & __slotType
The type of this PRMReferenceSlot.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
PRMClassElementContainer< GUM_SCALAR > & slotType()
Returns the type of this slot, which is a PRMClassElementContainer (it is not the type of PRMObject)...
virtual PRMClassElement< GUM_SCALAR >::ClassElementType elt_type() const
Implementation of the pure virtual method of PRMObject.
PRMReferenceSlot(const std::string &name, PRMClassElementContainer< GUM_SCALAR > &type, bool isArray=false)
Default constructor.
virtual void addChild(const PRMClassElement< GUM_SCALAR > &elt)
See gum::PRMClassElement::addChild().
bool __isArray
Flag indicating if this slot is an array.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
<agrum/PRM/classElementContainer.h>
virtual PRMAttribute< GUM_SCALAR > * getCastDescendant() const
Raise an OperationNotAllowed. See gum::PRMClassElement::getCastDescendant().
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
ClassElementType
Returns true if obj_ptr is of type PRMReferenceSlot.
virtual PRMType & type()
Raise an OperationNotAllowed. See gum::PRMClassElement::type().