28 #ifndef DOXYGEN_SHOULD_SKIP_THIS 30 # include <agrum/agrum.h> 36 template <
typename GUM_SCALAR >
37 ScheduleProject< GUM_SCALAR >::ScheduleProject(
38 const ScheduleMultiDim< GUM_SCALAR >& table,
39 const Set<
const DiscreteVariable* >& del_vars,
40 MultiDimImplementation< GUM_SCALAR >* (*project)(
const MultiDimImplementation< GUM_SCALAR >&,
41 const Set<
const DiscreteVariable* >&)) :
42 ScheduleOperation< GUM_SCALAR >(ScheduleOperation< GUM_SCALAR >::Type::PROJECT_MULTIDIM),
43 _table_(table), _del_vars_(del_vars), _args_(0), _results_(0), _project_(project) {
45 GUM_CONSTRUCTOR(ScheduleProject);
48 Sequence<
const DiscreteVariable* > vars = _table_.variablesSequence();
50 for (
const auto var: del_vars)
55 _result_ =
new ScheduleMultiDim< GUM_SCALAR >(vars);
INLINE void emplace(Args &&... args)