28 #ifndef GUM_MULTI_DIM_SPARSE_H 29 #define GUM_MULTI_DIM_SPARSE_H 31 #include <agrum/agrum.h> 32 #include <agrum/tools/multidim/implementations/multiDimWithOffset.h> 49 template <
typename GUM_SCALAR >
96 void add(
const DiscreteVariable& v);
98 void erase(
const DiscreteVariable& v);
100 virtual void fill(
const GUM_SCALAR& d)
const;
102 virtual GUM_SCALAR
get(
const Instantiation& i)
const;
104 virtual void set(
const Instantiation& i,
const GUM_SCALAR& value)
const;
127 virtual GUM_SCALAR&
get_(
const Instantiation& i)
const;
134 virtual void replace_(
const DiscreteVariable* x,
const DiscreteVariable* y);
140 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS 147 #include <agrum/tools/multidim/implementations/multiDimSparse_tpl.h> HashTable< Size, GUM_SCALAR > params_
The true data : the values is mutable since we can change the value in a const multiDimArray.
void erase(const DiscreteVariable &v)
Removes a var from the variables of the multidimensional matrix.
virtual ~MultiDimSparse()
Copy operator.
virtual void commitMultipleChanges_()
Synchronise content after MultipleChanges.
INLINE void emplace(Args &&... args)
GUM_SCALAR default_
The default value.
virtual GUM_SCALAR get(const Instantiation &i) const
Returns the value pointed by i.
virtual void replace_(const DiscreteVariable *x, const DiscreteVariable *y)
Replace variable x by y.
virtual void set(const Instantiation &i, const GUM_SCALAR &value) const
Changes the value pointed by i.
virtual GUM_SCALAR & get_(const Instantiation &i) const
MultiDimSparse(const MultiDimSparse< GUM_SCALAR > &from)
Copy constructor.
virtual MultiDimContainer< GUM_SCALAR > * newFactory() const
Class constructor.
void add(const DiscreteVariable &v)
Adds a new var to the variables of the multidimensional matrix.
virtual const std::string & name() const
Returns the real name of the multiDim implementation.
MultiDimSparse(const GUM_SCALAR &default_value)
Default constructor: creates an empty null dimensional matrix.
virtual void fill(const GUM_SCALAR &d) const
Fill the table with d.
virtual Size realSize() const
Returns the real number of parameters used for this table.
Multidimensional matrix stored as a sparse array in memory.