31 #ifndef GUM_MULTI_DIM_FUNCTION_GRAPH_PROJECTOR_H 32 #define GUM_MULTI_DIM_FUNCTION_GRAPH_PROJECTOR_H 36 #include <agrum/tools/multidim/implementations/multiDimFunctionGraph.h> 37 #include <agrum/tools/multidim/utils/FunctionGraphUtilities/terminalNodePolicies/ExactTerminalNodePolicy.h> 50 template <
typename GUM_SCALAR,
53 template <
typename >
class TerminalNodePolicy
66 const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy >* src,
67 const Set<
const DiscreteVariable* >& delVars,
68 const GUM_SCALAR neutral);
106 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS 112 #include <agrum/tools/multidim/utils/FunctionGraphUtilities/operators/multiDimFunctionGraphProjector_tpl.h> INLINE void emplace(Args &&... args)
const FUNCTOR< GUM_SCALAR > function__
The function to be performed on the leaves.
MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * project()
Computes and builds the Function Graph that is the result of the Projection.
const GUM_SCALAR neutral__
The function to be performed on the leaves.
MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * rd__
The resulting function graph.
MultiDimFunctionGraphProjector(const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > *src, const Set< const DiscreteVariable * > &delVars, const GUM_SCALAR neutral)
Default constructor.
const Set< const DiscreteVariable *> & delVars__
The list of variables on which the projection is performed.
Class used to perform Function Graph projections.
const MultiDimFunctionGraph< GUM_SCALAR, TerminalNodePolicy > * src__
One of the two function graphs used for the Projection.
~MultiDimFunctionGraphProjector()
Default destructor.