30 #ifndef GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED 38 # ifdef GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME 39 template <
typename GUM_SCALAR >
41 const MultiDimImplementation< GUM_SCALAR >& ttable,
42 const HashTable< const DiscreteVariable*, Idx >& inst_vars) {
45 typename PartialInstantiationRegister4MultiDim<
46 GUM_SCALAR >::PartialInstantiationPtr func;
55 "i", ttable.basename());
59 return func(&ttable, inst_vars);
static PartialInstantiationRegister4MultiDim & Register()
A named constructor that constructs one and only one Register per data type.
PartialInstantiationPtr get(const std::string &instantiation_func_name, const std::string &type_multidim) const
Returns the specialized partial instantiation operator assigned to a given type of MultiDimImplementa...
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME
a specialized partial instantiation function for multiDimArrays
gum is the global namespace for all aGrUM entities