1#ifndef HYDROBRICKS_TIME_MACHINE_H
2#define HYDROBRICKS_TIME_MACHINE_H
4#include "ActionsManager.h"
6#include "ParametersUpdater.h"
7#include "SettingsModel.h"
23 void Initialize(
double start,
double end,
int timeStep, TimeUnit timeStepUnit);
42 [[nodiscard]]
bool IsOver()
const;
61 [[nodiscard]]
double GetDate() const noexcept {
70 [[nodiscard]]
double GetStart() const noexcept {
79 [[nodiscard]]
double GetEnd() const noexcept {
89 return &_timeStepInDays;
98 _parametersUpdater = parametersUpdater;
107 _actionsManager = actionsManager;
123 [[nodiscard]]
bool IsValid()
const;
138 TimeUnit _timeStepUnit;
139 double _timeStepInDays;
146 void UpdateTimeStepInDays();
Definition ActionsManager.h:11
Definition ParametersUpdater.h:8
Definition TimeMachine.h:9
double * GetTimeStepPointer()
Definition TimeMachine.h:88
int GetTimeStepCount() const
Definition TimeMachine.cpp:61
void Initialize(double start, double end, int timeStep, TimeUnit timeStepUnit)
Definition TimeMachine.cpp:13
void IncrementTime()
Definition TimeMachine.cpp:49
double GetEnd() const noexcept
Definition TimeMachine.h:79
void Reset()
Definition TimeMachine.cpp:41
void SetParametersUpdater(ParametersUpdater *parametersUpdater)
Definition TimeMachine.h:97
int GetCurrentDayOfYear() const
Definition TimeMachine.cpp:87
void Validate() const
Definition TimeMachine.cpp:128
double GetDate() const noexcept
Definition TimeMachine.h:61
bool IsValid() const
Definition TimeMachine.cpp:100
bool IsOver() const
Definition TimeMachine.cpp:45
double GetStart() const noexcept
Definition TimeMachine.h:70
void SetActionsManager(ActionsManager *actionsManager)
Definition TimeMachine.h:106
Definition SettingsModel.h:15