hydrobricks
Loading...
Searching...
No Matches
ProcessLateral Class Reference
Inheritance diagram for ProcessLateral:
Process ProcessLateralSnowSlide

Public Member Functions

 ProcessLateral (WaterContainer *container)
 
bool IsValid () const override
 
int GetConnectionCount () const override
 
double * GetValuePointer (const string &name) override
 
void AttachFluxOutWithWeight (std::unique_ptr< Flux > flux, double weight=1.0)
 
double GetOriginLandCoverAreaFraction () const
 
double GetTargetLandCoverAreaFraction (Flux *flux)
 
double ComputeFractionAreas (Flux *flux)
 
bool IsLateralProcess () const override
 
- Public Member Functions inherited from Process
 Process (WaterContainer *container)
 
void Reset ()
 
virtual void Validate () const
 
virtual void SetHydroUnitProperties (HydroUnit *unit, Brick *brick)
 
virtual void SetParameters (const ProcessSettings &processSettings)
 
virtual void AttachForcing (Forcing *)
 
void AttachFluxOut (std::unique_ptr< Flux > flux)
 
int GetOutputFluxCount () const
 
FluxGetOutputFlux (size_t index) const
 
virtual bool ToAtmosphere () const
 
virtual bool NeedsTargetBrickLinking () const
 
virtual vecDouble GetChangeRates ()
 
virtual void StoreInOutgoingFlux (double *rate, int index)
 
void ApplyChange (int connectionIndex, double rate, double timeStepInDays)
 
virtual void Finalize ()
 
virtual vecDoublePt GetStateVariables ()
 
const string & GetName () const
 
void SetName (const string &name)
 
WaterContainerGetWaterContainer () const
 
virtual void SetTargetBrick (Brick *)
 
bool HasOutputFluxes () const
 
bool HasWaterContainer () const
 

Protected Attributes

vecDouble _weights
 
- Protected Attributes inherited from Process
string _name
 
WaterContainer_container
 
std::vector< std::unique_ptr< Flux > > _outputs
 

Additional Inherited Members

- Static Public Member Functions inherited from Process
static ProcessFactory (const ProcessSettings &processSettings, Brick *brick)
 
static bool RegisterParametersAndForcing (SettingsModel *modelSettings, const string &processType)
 
static bool HasParameter (const ProcessSettings &processSettings, const string &name)
 
static const float * GetParameterValuePointer (const ProcessSettings &processSettings, const string &name)
 
- Protected Member Functions inherited from Process
double GetSumChangeRatesOtherProcesses () const
 
virtual vecDouble GetRates ()=0
 

Member Function Documentation

◆ AttachFluxOutWithWeight()

void ProcessLateral::AttachFluxOutWithWeight ( std::unique_ptr< Flux > flux,
double weight = 1.0 )

Attach outgoing flux.

Parameters
fluxoutgoing flux (ownership transferred)
weightweight of the flux

◆ ComputeFractionAreas()

double ProcessLateral::ComputeFractionAreas ( Flux * flux)

Compute the fraction of areas for the lateral process.

Parameters
fluxpointer to the flux.
Returns
The computed fraction of areas.

◆ GetConnectionCount()

int ProcessLateral::GetConnectionCount ( ) const
overridevirtual

Get the number of connections to the process.

Returns
number of connections to the process.

Implements Process.

◆ GetOriginLandCoverAreaFraction()

double ProcessLateral::GetOriginLandCoverAreaFraction ( ) const

Get the area fraction of the origin land cover.

Returns
The area fraction of the origin land cover.

◆ GetTargetLandCoverAreaFraction()

double ProcessLateral::GetTargetLandCoverAreaFraction ( Flux * flux)

Get the area fraction of the target land cover.

Returns
The area fraction of the target land cover.

◆ GetValuePointer()

double * ProcessLateral::GetValuePointer ( const string & name)
overridevirtual

Get the value pointer for a given element.

Parameters
namename of the element to get.
Returns
pointer to the value of the given element.

Reimplemented from Process.

◆ IsLateralProcess()

bool ProcessLateral::IsLateralProcess ( ) const
inlinenodiscardoverridevirtual

Check if the process is a lateral process.

Returns
true if the process is a lateral process.

Reimplemented from Process.

Reimplemented in ProcessLateralSnowSlide.

◆ IsValid()

bool ProcessLateral::IsValid ( ) const
nodiscardoverridevirtual

Check that everything is correctly defined.

Returns
true if everything is correctly defined.

Implements Process.

Reimplemented in ProcessLateralSnowSlide.


The documentation for this class was generated from the following files: