31 #ifndef GUM_OPERATOR_PATTERN_ALLOWED 38 # include <agrum/tools/core/functors.h> 40 # include <agrum/tools/multidim/implementations/multiDimFunctionGraph.h> 41 # include <agrum/tools/multidim/implementations/multiDimImplementation.h> 42 # include <agrum/tools/multidim/utils/FunctionGraphUtilities/operators/multiDimFunctionGraphOperator.h> 52 # ifdef GUM_MULTI_DIM_OPERATOR_NAME 53 # define GUM_MULTI_DIM_OPERATOR_TYPE GUM_SCALAR 54 template <
typename GUM_SCALAR >
55 MultiDimFunctionGraph< GUM_SCALAR >*
56 GUM_MULTI_DIM_OPERATOR_NAME(
const MultiDimFunctionGraph< GUM_SCALAR >* dg1,
57 const MultiDimFunctionGraph< GUM_SCALAR >* dg2)
62 #ifdef GUM_MULTI_DIM_OPERATOR_IMPL2DECISION_GRAPH_NAME 63 #define GUM_MULTI_DIM_OPERATOR_TYPE GUM_SCALAR 64 template <
typename GUM_SCALAR>
65 MultiDimImplementation<GUM_SCALAR>*
66 GUM_MULTI_DIM_OPERATOR_IMPL2DECISION_GRAPH_NAME(
67 const MultiDimImplementation<GUM_SCALAR>* tt1,
68 const MultiDimImplementation<GUM_SCALAR>* tt2 )
75 # ifdef GUM_MULTI_DIM_OPERATOR_IMPL2DECISION_GRAPH_NAME 76 const MultiDimFunctionGraph< GUM_SCALAR >* dg1
77 =
reinterpret_cast<
const MultiDimFunctionGraph< GUM_SCALAR >* >(tt1);
78 const MultiDimFunctionGraph< GUM_SCALAR >* dg2
79 =
reinterpret_cast<
const MultiDimFunctionGraph< GUM_SCALAR >* >(tt2);
81 MultiDimFunctionGraphOperator< GUM_MULTI_DIM_OPERATOR_TYPE, GUM_MULTI_DIM_OPERATOR > ope(dg1,
86 # undef GUM_MULTI_DIM_OPERATOR_TYPE