51#ifndef DOXYGEN_SHOULD_SKIP_THIS
60 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
62 GUM_SCALAR (*proj)(
const TABLE< GUM_SCALAR >&,
Instantiation*)) : proj_(proj) {
64 GUM_CONSTRUCTOR(MultiDimCompleteProjection);
68 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
69 MultiDimCompleteProjection< GUM_SCALAR, TABLE >::MultiDimCompleteProjection(
70 const MultiDimCompleteProjection< GUM_SCALAR, TABLE >& from) : proj_(from.proj_) {
72 GUM_CONS_CPY(MultiDimCompleteProjection);
76 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
77 MultiDimCompleteProjection< GUM_SCALAR, TABLE >::~MultiDimCompleteProjection() {
79 GUM_DESTRUCTOR(MultiDimCompleteProjection);
83 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
84 MultiDimCompleteProjection< GUM_SCALAR, TABLE >*
85 MultiDimCompleteProjection< GUM_SCALAR, TABLE >::newFactory()
const {
86 return new MultiDimCompleteProjection< GUM_SCALAR, TABLE >(*
this);
90 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
92 MultiDimCompleteProjection< GUM_SCALAR, TABLE >::project(
const TABLE< GUM_SCALAR >& table,
93 Instantiation* inst) {
94 return proj_(table, inst);
98 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
99 void MultiDimCompleteProjection< GUM_SCALAR, TABLE >::setProjectFunction(
100 GUM_SCALAR (*proj)(
const TABLE< GUM_SCALAR >&, Instantiation*)) {
105 template <
typename GUM_SCALAR,
template <
typename >
class TABLE >
106 INLINE GUM_SCALAR (*MultiDimCompleteProjection< GUM_SCALAR, TABLE >::projectFunction())(
107 const TABLE< GUM_SCALAR >&,
Class for assigning/browsing values to tuples of discrete variables.
MultiDimCompleteProjection(GUM_SCALAR(*proj)(const TABLE< GUM_SCALAR > &, Instantiation *))
Default constructor.
gum is the global namespace for all aGrUM entities