1#ifndef HYDROBRICKS_PROCESS_H
2#define HYDROBRICKS_PROCESS_H
7#include "SettingsModel.h"
98 m_outputs.push_back(flux);
116 return static_cast<int>(m_outputs.size());
166 void ApplyChange(
int connectionIndex,
double rate,
double timeStepInDays);
181 return vecDoublePt{};
231 vector<Flux*> m_outputs;
Definition HydroUnit.h:13
virtual void Finalize()
Definition Process.h:171
virtual vecDouble GetChangeRates()
Definition Process.cpp:168
string GetName()
Definition Process.h:197
virtual bool ToAtmosphere()
Definition Process.h:124
int GetOutputFluxesNb()
Definition Process.h:115
virtual void SetHydroUnitProperties(HydroUnit *unit, Brick *brick)
Definition Process.cpp:138
virtual vecDouble GetRates()=0
void SetName(const string &name)
Definition Process.h:206
virtual void AttachForcing(Forcing *)
Definition Process.h:87
WaterContainer * GetWaterContainer()
Definition Process.h:215
void AttachFluxOut(Flux *flux)
Definition Process.h:96
static bool RegisterParametersAndForcing(SettingsModel *modelSettings, const string &processType)
Definition Process.cpp:99
virtual void SetParameters(const ProcessSettings &processSettings)
Definition Process.cpp:142
static bool HasParameter(const ProcessSettings &processSettings, const string &name)
Definition Process.cpp:146
void ApplyChange(int connectionIndex, double rate, double timeStepInDays)
Definition Process.cpp:184
static Process * Factory(const ProcessSettings &processSettings, Brick *brick)
Definition Process.cpp:24
virtual double * GetValuePointer(const string &name)
Definition Process.cpp:195
virtual vecDoublePt GetStateVariables()
Definition Process.h:180
virtual void StoreInOutgoingFlux(double *rate, int index)
Definition Process.cpp:178
double GetSumChangeRatesOtherProcesses()
Definition Process.cpp:199
vector< Flux * > GetOutputFluxes()
Definition Process.h:106
virtual int GetConnectionsNb()=0
virtual bool NeedsTargetBrickLinking()
Definition Process.h:133
void Reset()
Definition Process.cpp:132
virtual void SetTargetBrick(Brick *)
Definition Process.h:224
static float * GetParameterValuePointer(const ProcessSettings &processSettings, const string &name)
Definition Process.cpp:156
Definition SettingsModel.h:66
Definition Includes.h:115
Definition WaterContainer.h:9
Definition SettingsModel.h:27