This code defines a struct named "TLidProc" which represents the LID (Low Impact Development) process, which is a generic LID design per unit of area.
The struct contains the following fields:
Field | Type | Description |
---|---|---|
ID | char* | identifying name of the LID process |
lidType | int | type of LID (corresponds to an enumerator from the "LidTypes" enumeration) |
surface | TSurfaceLayer | surface layer parameters |
pavement | TPavementLayer | pavement layer parameters |
soil | TSoilLayer | soil layer parameters |
storage | TStorageLayer | storage layer parameters |
drain | TDrainLayer | underdrain system parameters |
drainMat | TDrainMatLayer | drainage mat layer |
drainRmvl | double* | underdrain pollutant removals |
The "ID" field is a string that can be used to identify the specific LID process. The "lidType" field is an integer that corresponds to one of the enumerators from the "LidTypes" enumeration. This allows the code to determine the specific type of LID process represented by this struct.
The "surface", "pavement", "soil", "storage", "drain" and "drainMat" fields are structs themselves and they contain specific parameters for the surface layer, pavement layer, soil layer, storage layer, underdrain system and drainage mat layer respectively. The "drainRmvl" field is a pointer to an array of doubles, which represent the underdrain pollutant removals.
This struct is used to store all the information about a specific LID process and can be used to design and simulate the performance of the LID unit. The struct also contains information about different layers of LID unit, like surface layer, soil layer and storage layer which helps to simulate the performance of LID unit.
// LID Process - generic LID design per unit of area typedef struct { char* ID; // identifying name int lidType; // type of LID TSurfaceLayer surface; // surface layer parameters TPavementLayer pavement; // pavement layer parameters TSoilLayer soil; // soil layer parameters TStorageLayer storage; // storage layer parameters TDrainLayer drain; // underdrain system parameters TDrainMatLayer drainMat; // drainage mat layer double* drainRmvl; // underdrain pollutant removals } TLidProc;