File model_builder.hpp

class IModelBuilder
#include <model_builder.hpp>

Defines an interface for all classes that allow to incrementally build rule-based models.

Subclassed by IntermediateModelBuilder

Public Functions

inline virtual ~IModelBuilder()
virtual void setDefaultRule(std::unique_ptr<IEvaluatedPrediction> &predictionPtr) = 0

Sets the default rule of the model.

Parameters:

predictionPtr – A reference to an unique pointer of type IEvaluatedPrediction that stores the scores that are predicted by the default rule

virtual void addRule(std::unique_ptr<ConditionList> &conditionListPtr, std::unique_ptr<IEvaluatedPrediction> &predictionPtr) = 0

Adds a new rule to the model.

Parameters:
  • conditionListPtr – A reference to an unique pointer of type ConditionList that stores the rule’s conditions

  • predictionPtr – A reference to an unique pointer of type IEvaluatedPrediction that stores the scores that are predicted by the rule

virtual void setNumUsedRules(uint32 numUsedRules) = 0

Sets the number of used rules.

Parameters:

numUsedRules – The number of used rules

virtual std::unique_ptr<IRuleModel> buildModel() = 0

Builds and returns the model.

Returns:

An unique pointer to an object of type IRuleModel that has been built

class IModelBuilderFactory
#include <model_builder.hpp>

Defines an interface for all factories that allow to create instances of the type IModelBuilder.

Public Functions

inline virtual ~IModelBuilderFactory()
virtual std::unique_ptr<IModelBuilder> create() const = 0

Creates and returns a new instance of type IModelBuilder.

Returns:

An unique pointer to an object of type IModelBuilder that has been created