Class Iterator::Iterant

Nested Relationships

This class is a nested type of Class Iterator.

Inheritance Relationships

Derived Types

Class Documentation

class Iterant

A base class for classes that specify what happens during one timestep.

Subclassed by Nextsim::Counterant, Nextsim::IModelStep

Public Functions

Iterant() = default
Iterant(const Iterant &copyFrom) = default
Iterant &operator=(const Iterant &copyFrom) = default
Iterant(Iterant&&) = default
Iterant &operator=(Iterant&&) = default
virtual ~Iterant() = default
virtual void init() = 0

Initializes the model, based on some environment stored in the implementing class.

virtual void start(const TimePoint &startTime) = 0

Initializes the iterant based on the start time.

Parameters:

startTime – the time at the initialization of the iterant.

virtual void iterate(const TimestepTime &dt) = 0

Performs one iteration a specified length

Parameters:

dt – The length of the timestep.

virtual void stop(const TimePoint &stopTime) = 0

Finalizes the iterant based on the stop time.

Parameters:

stopTime – the time at the finalization of the iterant.