1 #ifndef __NOMAD400_MEGAITERATION__
2 #define __NOMAD400_MEGAITERATION__
5 #include "../Algos/Iteration.hpp"
7 #include "../nomad_nsbegin.hpp"
68 std::shared_ptr<Barrier> barrier,
79 throw Exception(__FILE__, __LINE__,
"MegaIteration constructor: barrier must not be NULL.");
94 void setK(
const size_t k) {
_k = k; }
103 virtual void start()
override = 0;
104 virtual bool run()
override = 0;
105 virtual void end()
override;
115 virtual void read( std::istream& is );
116 virtual void display( std::ostream& os )
const ;
135 #include "../nomad_nsend.hpp"
137 #endif // __NOMAD400_MEGAITERATION__
virtual void display(std::ostream &os) const
virtual void end() override
What a step does.
Class to manage the iterations.
size_t getNbIterations() const
const SuccessType & getSuccessType() const
SuccessType
Success type of an iteration.
void setK(const size_t k)
virtual void read(std::istream &is)
std::istream & operator>>(std::istream &is, Algorithm &algo)
Operator to read parameters used for hot restart.
void setBarrier(const std::shared_ptr< NOMAD::Barrier > &barrier)
virtual void start() override=0
What a step does.
std::shared_ptr< Iteration > getIter(size_t i) const
virtual bool run() override=0
What a step does.
std::vector< std::shared_ptr< Iteration > > _iterList
A collection of additional iterations: Help generate more eval points.
void setSuccessType(const SuccessType &success)
size_t _nbIterRun
Number of iterations run within this MegaIteration.
std::ostream & operator<<(std::ostream &os, const Algorithm &algo)
Operator to write parameters used for hot restart.
Base class of all types of steps (Iteration, Termination, Initialization, Poll, Mads,...).
const std::shared_ptr< NOMAD::Barrier > getBarrier() const
MegaIteration(const Step *parentStep, size_t k, std::shared_ptr< Barrier > barrier, SuccessType success)
Constructor.
void init()
Helper for constructor.
std::shared_ptr< Barrier > _barrier