27 #ifndef GUM_PARTIAL_INSTANTIATION_4_MULTI_DIM_H 28 #define GUM_PARTIAL_INSTANTIATION_4_MULTI_DIM_H 39 template <
typename GUM_SCALAR >
40 class MultiDimImplementation;
42 template <
typename GUM_SCALAR >
45 template <
typename GUM_SCALAR >
46 class MultiDimDecorator;
66 template <
typename GUM_SCALAR >
68 const MultiDimArray< GUM_SCALAR >* table,
69 const HashTable< const DiscreteVariable*, Idx >& inst_vars);
90 template <
typename GUM_SCALAR >
92 const MultiDimImplementation< GUM_SCALAR >* table,
93 const HashTable< const DiscreteVariable*, Idx >& inst_vars);
114 template <
typename GUM_SCALAR >
116 const MultiDimArray< GUM_SCALAR* >* table,
117 const HashTable< const DiscreteVariable*, Idx >& inst_vars);
138 template <
typename GUM_SCALAR >
139 MultiDimImplementation< GUM_SCALAR* >*
141 const MultiDimImplementation< GUM_SCALAR* >* table,
142 const HashTable< const DiscreteVariable*, Idx >& inst_vars);
152 template <
typename GUM_SCALAR >
154 const MultiDimImplementation< GUM_SCALAR >& table,
155 const HashTable< const DiscreteVariable*, Idx >& inst_vars);
165 template <
typename GUM_SCALAR >
167 const MultiDimDecorator< GUM_SCALAR >& table,
168 const HashTable< const DiscreteVariable*, Idx >& inst_vars);
179 template <
typename GUM_SCALAR >
186 template <
typename GUM_SCALAR >
207 template <
typename GUM_SCALAR >
212 void init() { partialInstantiation4MultiDimInit< GUM_SCALAR >(); };
234 template <
typename GUM_SCALAR >
239 void init() { pointerPartialInstantiation4MultiDimInit< GUM_SCALAR >(); };
void init()
Initialize the partial instantiation functions.
Base class for discrete random variable.
Implementation for partial instantiation functions.
gum is the global namespace for all aGrUM entities
void init()
Initialize the partial instantiation functions.
MultiDimArray< GUM_SCALAR *> * partialInstantiationMultiDimArray4Pointers(const MultiDimArray< GUM_SCALAR * > *table, const HashTable< const DiscreteVariable *, Idx > &inst_vars)
A specialized function for instantiating variables in a MultiDimArray.
void pointerPartialInstantiation4MultiDimInit()
The function used to register all the instantiations on multidimImplementations over pointers types...
MultiDimArray< GUM_SCALAR > * partialInstantiationMultiDimArray(const MultiDimArray< GUM_SCALAR > *table, const HashTable< const DiscreteVariable *, Idx > &inst_vars)
A specialized function for instantiating variables in a multiDimArray.
MultiDimImplementation< GUM_SCALAR > * partialInstantiation(const MultiDimImplementation< GUM_SCALAR > &table, const HashTable< const DiscreteVariable *, Idx > &inst_vars)
Instantiate variables in a MultiDimImplementation.
void partialInstantiation4MultiDimInit()
The function used to register all the instantiation operators on multidimImplementations over non-poi...
Class hash tables iterators.
A class used to register instantiation functions over non-pointers types.