hydrobricks
Loading...
Searching...
No Matches
Glacier.h
1#ifndef HYDROBRICKS_GLACIER_H
2#define HYDROBRICKS_GLACIER_H
3
4#include "IceContainer.h"
5#include "Includes.h"
6#include "LandCover.h"
7#include "Snowpack.h"
8
9class Glacier : public LandCover {
10 public:
11 Glacier();
12
16 void Reset() override;
17
21 void SaveAsInitialState() override;
22
26 void SetParameters(const BrickSettings& brickSettings) override;
27
31 void AttachFluxIn(Flux* flux) override;
32
36 bool IsOk() override;
37
44
48 bool IsGlacier() override {
49 return true;
50 }
51
55 void Finalize() override;
56
60 void SetInitialState(double value, const string& type) override;
61
65 double GetContent(const string& type) override;
66
70 void UpdateContent(double value, const string& type) override;
71
75 void UpdateContentFromInputs() override;
76
80 void ApplyConstraints(double timeStep) override;
81
85 vecDoublePt GetDynamicContentChanges() override;
86
90 double* GetValuePointer(const string& name) override;
91
95 void SurfaceComponentAdded(SurfaceComponent* brick) override;
96
97 protected:
98 IceContainer* m_ice;
99};
100
101#endif // HYDROBRICKS_GLACIER_H
Definition Flux.h:8
Definition Glacier.h:9
void SurfaceComponentAdded(SurfaceComponent *brick) override
Definition Glacier.cpp:121
double GetContent(const string &type) override
Definition Glacier.cpp:70
double * GetValuePointer(const string &name) override
Definition Glacier.cpp:113
void UpdateContent(double value, const string &type) override
Definition Glacier.cpp:81
void Reset() override
Definition Glacier.cpp:9
WaterContainer * GetIceContainer()
Definition Glacier.cpp:51
bool IsGlacier() override
Definition Glacier.h:48
bool IsOk() override
Definition Glacier.cpp:43
void SetParameters(const BrickSettings &brickSettings) override
Definition Glacier.cpp:19
void AttachFluxIn(Flux *flux) override
Definition Glacier.cpp:32
void SaveAsInitialState() override
Definition Glacier.cpp:14
void UpdateContentFromInputs() override
Definition Glacier.cpp:91
void Finalize() override
Definition Glacier.cpp:55
vecDoublePt GetDynamicContentChanges() override
Definition Glacier.cpp:101
void SetInitialState(double value, const string &type) override
Definition Glacier.cpp:60
void ApplyConstraints(double timeStep) override
Definition Glacier.cpp:96
Definition IceContainer.h:10
Definition LandCover.h:10
Definition SurfaceComponent.h:10
Definition WaterContainer.h:9
Definition SettingsModel.h:45