56 template <
typename GUM_ELEMENT >
65 template <
typename GUM_ELEMENT >
74 template <
typename GUM_ELEMENT >
83 template <
typename GUM_ELEMENT >
96 template <
typename GUM_ELEMENT >
115 template <
typename GUM_ELEMENT >
123 template <
typename GUM_ELEMENT >
130 template <
typename GUM_ELEMENT >
136 template <
typename GUM_ELEMENT >
142 template <
typename GUM_ELEMENT >
147 template <
typename GUM_ELEMENT >
153 template <
typename GUM_ELEMENT >
155 static const std::string str =
"MultiDimSparse";
159 template <
typename GUM_ELEMENT >
165 template <
typename GUM_ELEMENT >
Base class for discrete random variable.
Class for assigning/browsing values to tuples of discrete variables.
bool isMaster(const MultiDimAdressable *m) const
Indicates whether m is the master of this instantiation.
Abstract base class for all multi dimensionnal containers.
void replace_(const DiscreteVariable *x, const DiscreteVariable *y) override
Replace variable x by y.
void fill(const GUM_ELEMENT &d) const override
Fill the table with d.
MultiDimContainer< GUM_ELEMENT > * newFactory() const override
Class constructor.
~MultiDimSparse() override
Copy operator.
const std::string & name() const override
Returns the real name of the multiDim implementation.
void add(const DiscreteVariable &v) override
Adds a new var to the variables of the multidimensional matrix.
GUM_ELEMENT get(const Instantiation &i) const override
Returns the value pointed by i.
void set(const Instantiation &i, const GUM_ELEMENT &value) const override
Changes the value pointed by i.
HashTable< Size, GUM_ELEMENT > params_
The true data : the values is mutable since we can change the value in a const multiDimArray.
GUM_ELEMENT & get_(const Instantiation &i) const override
void erase(const DiscreteVariable &v) override
Removes a var from the variables of the multidimensional matrix.
void replace_(const DiscreteVariable *x, const DiscreteVariable *y) override
Replace variable x by y.
GUM_ELEMENT default_
The default value.
Size realSize() const override
Returns the real number of parameters used for this table.
MultiDimSparse(const GUM_ELEMENT &default_value)
Default constructor: creates an empty null dimensional matrix.
void commitMultipleChanges_() override
Synchronise content after MultipleChanges.
Size getOffs_(const Instantiation &i) const
Compute the offset of a Instantiation.
void erase(const DiscreteVariable &v) override
Removes a var from the variables of the multidimensional matrix.
MultiDimWithOffset()
Class constructor.
HashTable< const Instantiation *, Size > offsets_
The position in the array of each slave Instantiation.
void add(const DiscreteVariable &v) override
Adds a new var to the variables of the multidimensional matrix.
Exception : operation not allowed.
#define GUM_ERROR(type, msg)
std::size_t Size
In aGrUM, hashed values are unsigned long int.
Headers of MultiDimSparse.
gum is the global namespace for all aGrUM entities