50#ifndef GUM_COMPLETE_PROJECTIONS_4_MULTI_DIM_H
51#define GUM_COMPLETE_PROJECTIONS_4_MULTI_DIM_H
55#if !defined(_WIN32) && !defined(_WIN64)
92 template <
typename GUM_ELEMENT >
117 template <
typename GUM_ELEMENT >
142 template <
typename GUM_ELEMENT >
167 template <
typename GUM_ELEMENT >
198 template <
typename GUM_ELEMENT >
223 template <
typename GUM_ELEMENT >
248 template <
typename GUM_ELEMENT >
273 template <
typename GUM_ELEMENT >
305 template <
typename GUM_ELEMENT >
331 template <
typename GUM_ELEMENT >
357 template <
typename GUM_ELEMENT >
383 template <
typename GUM_ELEMENT >
414 template <
typename GUM_ELEMENT >
439 template <
typename GUM_ELEMENT >
464 template <
typename GUM_ELEMENT >
489 template <
typename GUM_ELEMENT >
497 template <
typename GUM_ELEMENT >
502 template <
typename GUM_ELEMENT >
507 template <
typename GUM_ELEMENT >
513 template <
typename GUM_ELEMENT >
527 template <
typename GUM_ELEMENT >
535 template <
typename GUM_ELEMENT >
553 template <
typename GUM_ELEMENT >
573 template <
typename GUM_ELEMENT >
Class for assigning/browsing values to tuples of discrete variables.
Multidimensional matrix stored as an array in memory.
<agrum/base/multidim/multiDimImplementation.h>
Efficient functionals for projecting multidim tables over all their variables.
GUM_ELEMENT projectMaxMultiDimArray(const MultiDimArray< GUM_ELEMENT > *table, Instantiation *instantiation=0)
A specialized function for projecting a multiDimArray using a Max operator.
void pointerCompleteProjections4MultiDimInit()
The function used to register all the complete projections on multidimImplementations over pointers t...
GUM_ELEMENT * projectSumMultiDimArray4Pointers(const MultiDimArray< GUM_ELEMENT * > *table, Instantiation *instantiation=0)
a specialized function for projecting a multiDimArray using a Sum operator
GUM_ELEMENT * projectMaxMultiDimArray4Pointers(const MultiDimArray< GUM_ELEMENT * > *table, Instantiation *instantiation=0)
A specialized function for projecting a multiDimArray using a Max operator.
GUM_ELEMENT projectMinMultiDimArray(const MultiDimArray< GUM_ELEMENT > *table, Instantiation *instantiation=0)
A specialized function for projecting a multiDimArray using a Min operator.
void completeProjections4MultiDimInit()
the function used to register all the complete projection operators on multidimImplementations over n...
GUM_ELEMENT * projectMinMultiDimArray4Pointers(const MultiDimArray< GUM_ELEMENT * > *table, Instantiation *instantiation=0)
A specialized function for projecting a multiDimArray using a Min operator.
GUM_ELEMENT * projectProductMultiDimArray4Pointers(const MultiDimArray< GUM_ELEMENT * > *table, Instantiation *instantiation=0)
a function for projecting a multiDimArray using a Product operator
GUM_ELEMENT projectProductMultiDimArray(const MultiDimArray< GUM_ELEMENT > *table, Instantiation *instantiation=0)
a function for projecting a multiDimArray using a Product operator
GUM_ELEMENT projectSumMultiDimArray(const MultiDimArray< GUM_ELEMENT > *table, Instantiation *instantiation=0)
a specialized function for projecting a multiDimArray using a Sum operator
Header of the MultiDimArray class.
gum is the global namespace for all aGrUM entities
GUM_ELEMENT projectProduct(const MultiDimImplementation< GUM_ELEMENT > &table, Instantiation *instantiation=0)
the function to be used to project a MultiDimImplementation using a Product
GUM_ELEMENT projectSum(const MultiDimImplementation< GUM_ELEMENT > &table, Instantiation *instantiation=0)
the function to be used to project a MultiDimImplementation using a sum
GUM_ELEMENT projectMin(const MultiDimImplementation< GUM_ELEMENT > &table, Instantiation *instantiation=0)
the function to be used to project a MultiDimImplementation using a Min
GUM_ELEMENT projectMax(const MultiDimImplementation< GUM_ELEMENT > &table, Instantiation *instantiation=0)
the function to be used to project a MultiDimImplementation using a Max
a class used to register complete projections over non-pointers types