aGrUM  0.16.0
PRMFuncAttribute.h
Go to the documentation of this file.
1 
30 #ifndef GUM_FUNC_ATTRIBUTE_H
31 #define GUM_FUNC_ATTRIBUTE_H
32 
34 
38 
39 namespace gum {
40  namespace prm {
41 
57  template < typename GUM_SCALAR >
58  class PRMFuncAttribute : public PRMScalarAttribute< GUM_SCALAR > {
59  public:
73  PRMFuncAttribute(const std::string& name,
74  const PRMType& type,
77 
79  virtual ~PRMFuncAttribute();
80 
82  virtual void addParent(const PRMClassElement< GUM_SCALAR >& elt);
83 
85  virtual void addChild(const PRMClassElement< GUM_SCALAR >& elt);
86 
87  protected:
90 
94 
95  virtual void _setCpf(Potential< GUM_SCALAR >* cpf);
96  };
97 
98 
99 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
100  extern template class PRMFuncAttribute< double >;
101 #endif
102 
103 
104  } /* namespace prm */
105 } // namespace gum
106 
108 
109 #endif /* GUM_FUNC_ATTRIBUTE_H */
aGrUM&#39;s Potential is a multi-dimensional array with tensor operators.
Definition: potential.h:60
const std::string & name() const
Returns the name of this object.
Definition: PRMObject_inl.h:35
PRMFuncAttribute< GUM_SCALAR > & operator=(const PRMFuncAttribute< GUM_SCALAR > &from)
Copy operator. Don&#39;t use it.
Abstract class representing an element of PRM class.
virtual void addChild(const PRMClassElement< GUM_SCALAR > &elt)
See gum::PRMClassElement::_addChild().
virtual PRMType & type()
See gum::PRMClassElement::type().
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Definition: agrum.h:25
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual const Potential< GUM_SCALAR > & cpf() const
See gum::PRMClassElement::cpf().
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
<agrum/PRM/elements/funcAttribute.h>
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Multidimensional matrix stored as an array in memory.
Definition: multiDimArray.h:54
This is a decoration of the DiscreteVariable class.
Definition: PRMType.h:63
PRMFuncAttribute(const std::string &name, const PRMType &type, MultiDimImplementation< GUM_SCALAR > *impl=new MultiDimArray< GUM_SCALAR >())
Constructor used by gum::Class.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual ~PRMFuncAttribute()
Destructor.
<agrum/multidim/multiDimImplementation.h>
virtual void addParent(const PRMClassElement< GUM_SCALAR > &elt)
See gum::PRMClassElement::_addParent().
virtual void _setCpf(Potential< GUM_SCALAR > *cpf)
<agrum/PRM/elements/scalarAttribute.h>
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.