File post_optimization_phase_list.hpp

class PostOptimizationPhaseListFactory : public IPostOptimizationFactory
#include <post_optimization_phase_list.hpp>

A factory that allows to create instances of the type IPostOptimization that carries out multiple optimization phases.

Public Functions

void addPostOptimizationPhaseFactory(std::unique_ptr<IPostOptimizationPhaseFactory> postOptimizationPhaseFactoryPtr)

Adds a new factory that allows to creates instances of an optimization phase to be carried out.

Parameters:

postOptimizationPhaseFactoryPtr – An unique pointer to an object of type IPostOptimizationPhaseFactory that should be added

virtual std::unique_ptr<IPostOptimization> create(const IModelBuilderFactory &modelBuilderFactory) const override

Creates and returns a new object of type IPostOptimization.

Parameters:

modelBuilderFactory – A reference to an object of type IModelBuilderFactory that allows to create the builder to be used for assembling a model

Returns:

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

Private Members

std::vector<std::unique_ptr<IPostOptimizationPhaseFactory>> postOptimizationPhaseFactories_