hydrobricks
Loading...
Searching...
No Matches
SurfaceComponent.h
1#ifndef HYDROBRICKS_SURFACE_COMPONENT_H
2#define HYDROBRICKS_SURFACE_COMPONENT_H
3
4#include "Brick.h"
5#include "Includes.h"
6#include "LandCover.h"
7
8class HydroUnit;
9
10class SurfaceComponent : public Brick {
11 public:
13
17 bool CanHaveAreaFraction() override {
18 return true;
19 }
20
26 double GetAreaFraction() const {
27 return _areaFraction;
28 }
29
35 void SetAreaFraction(double value);
36
42 double GetParentAreaFraction();
43
47 bool IsNull() override;
48
54 virtual void SetParent(LandCover* parent) {
55 _parent = parent;
56 _parent->SurfaceComponentAdded(this);
57 }
58
59 protected:
60 LandCover* _parent;
61 double _areaFraction;
62};
63
64#endif // HYDROBRICKS_SURFACE_COMPONENT_H
Definition Brick.h:10
Definition HydroUnit.h:14
Definition LandCover.h:10
virtual void SurfaceComponentAdded(SurfaceComponent *brick)
Definition LandCover.cpp:23
Definition SurfaceComponent.h:10
double GetParentAreaFraction()
Definition SurfaceComponent.cpp:25
void SetAreaFraction(double value)
Definition SurfaceComponent.cpp:12
double GetAreaFraction() const
Definition SurfaceComponent.h:26
bool IsNull() override
Definition SurfaceComponent.cpp:30
virtual void SetParent(LandCover *parent)
Definition SurfaceComponent.h:54
bool CanHaveAreaFraction() override
Definition SurfaceComponent.h:17