49#ifndef GUM_FORALL_AGGREGATOR_H
50#define GUM_FORALL_AGGREGATOR_H
73 template < GUM_Numeric GUM_SCALAR >
100 std::optional< Idx >
value()
const override;
111#ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
Base class for discrete random variable.
std::string aggregatorName() const override
Returns the scalar parameter of this aggregator, if it has one.
Idx fold_(const DiscreteVariable &v, Idx i1, Idx i2, bool &stop_iteration) const override
fold_ is applied on value i1 for variable v. the actual result for precedent applications is i2.
std::optional< Idx > value() const override
Returns the scalar parameter of this aggregator, if it has one.
Idx neutralElt_() const override
neutralElt_() is the result value for the first application of fold_
MultiDimContainer< GUM_SCALAR > * newFactory() const override
This method creates a clone of this object, withouth its content (including variable),...
Size Idx
Type for indexes.
Aggregators are functional description of CPTs.
gum is the global namespace for all aGrUM entities