aGrUM 2.3.2
a C++ library for (probabilistic) graphical models
partialInstantiation4MultiDim_tpl.h File Reference

Implementation for partial instantiation functions. More...

Include dependency graph for partialInstantiation4MultiDim_tpl.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  gum
 gum is the global namespace for all aGrUM entities

Macros

#define GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED   1
#define GUM_MULTI_DIM_DECORATOR_PARTIAL_INST(NAME)
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimArray
 a specialized partial instantiation function for multiDimArrays
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimArray4Pointers
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray4Pointers
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimImplementation
 a specialized partial instantiation function for multiDimArrays
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimImplementation4Pointers
#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiation
 a specialized partial instantiation function for multiDimArrays

Functions

template<typename GUM_SCALAR>
void gum::partialInstantiation4MultiDimInit ()
 The function used to register all the instantiation operators on multidimImplementations over non-pointers types.
template<typename GUM_SCALAR>
void gum::pointerPartialInstantiation4MultiDimInit ()
 The function used to register all the instantiations on multidimImplementations over pointers types.

Detailed Description

Implementation for partial instantiation functions.

Author
Christophe GONZALES(_at_AMU) and Pierre-Henri WUILLEMIN(_at_LIP6)

Definition in file partialInstantiation4MultiDim_tpl.h.

Macro Definition Documentation

◆ GUM_MULTI_DIM_DECORATOR_PARTIAL_INST

#define GUM_MULTI_DIM_DECORATOR_PARTIAL_INST ( NAME)
Value:
namespace gum { \
template < typename GUM_SCALAR > \
MultiDimImplementation< GUM_SCALAR >* \
NAME(const MultiDimDecorator< GUM_SCALAR >& table, \
const HashTable< const DiscreteVariable*, Idx >& inst_vars) { \
const MultiDimImplementation< GUM_SCALAR >* impl = table.content(); \
return NAME(*impl, inst_vars); \
} \
}
gum is the global namespace for all aGrUM entities
Definition agrum.h:46

Definition at line 55 of file partialInstantiation4MultiDim_tpl.h.

55#define GUM_MULTI_DIM_DECORATOR_PARTIAL_INST(NAME) \
56 namespace gum { \
57 template < typename GUM_SCALAR > \
58 MultiDimImplementation< GUM_SCALAR >* \
59 NAME(const MultiDimDecorator< GUM_SCALAR >& table, \
60 const HashTable< const DiscreteVariable*, Idx >& inst_vars) { \
61 const MultiDimImplementation< GUM_SCALAR >* impl = table.content(); \
62 return NAME(*impl, inst_vars); \
63 } \
64 }

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_IMPL2ARRAY_NAME

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray

Definition at line 72 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME [1/3]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiation

a specialized partial instantiation function for multiDimArrays

the function to be used to partially instantiate a MultiDimImplementation

default "basename" functions for instantiating MultiDimImplementations

Definition at line 68 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME [2/3]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimImplementation

a specialized partial instantiation function for multiDimArrays

the function to be used to partially instantiate a MultiDimImplementation

default "basename" functions for instantiating MultiDimImplementations

Definition at line 68 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME [3/3]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_NAME   partialInstantiationMultiDimArray

a specialized partial instantiation function for multiDimArrays

the function to be used to partially instantiate a MultiDimImplementation

default "basename" functions for instantiating MultiDimImplementations

Definition at line 68 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME   partialInstantiationMultiDimArray4Pointers

Definition at line 80 of file partialInstantiation4MultiDim_tpl.h.

80#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_IMPL2ARRAY_NAME \
81 partialInstantiationMultiDimArray4Pointers

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME [1/2]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimImplementation4Pointers

Definition at line 76 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME [2/2]

#define GUM_MULTI_DIM_PARTIAL_INSTANTIATION_POINTER_NAME   partialInstantiationMultiDimArray4Pointers

Definition at line 76 of file partialInstantiation4MultiDim_tpl.h.

◆ GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED

#define GUM_PARTIAL_INSTANTIATION_PATTERN_ALLOWED   1

Definition at line 51 of file partialInstantiation4MultiDim_tpl.h.