33#ifndef FLOOR_CONDITIONS_H
34#define FLOOR_CONDITIONS_H
37#ifdef WOSS_NETCDF_SUPPORT
45 static constexpr int DECK41_FLOORTYPE_GRAVEL = 0;
47 static constexpr int DECK41_FLOORTYPE_SAND = 1;
49 static constexpr int DECK41_FLOORTYPE_SILT = 2;
51 static constexpr int DECK41_FLOORTYPE_CLAY = 3;
53 static constexpr int DECK41_FLOORTYPE_OOZE = 4;
55 static constexpr int DECK41_FLOORTYPE_MUD = 5;
57 static constexpr int DECK41_FLOORTYPE_ROCKS = 6;
59 static constexpr int DECK41_FLOORTYPE_ORGANIC = 7;
61 static constexpr int DECK41_FLOORTYPE_NODULES = 8;
63 static constexpr int DECK41_FLOORTYPE_HARDBOTTOM = 9;
65 static constexpr int DECK41_FLOORTYPE_NODATA = 11;
206 bool equal = (types.first == types.second);
207 bool first = (types.first == DECK41_FLOORTYPE_GRAVEL) || (types.first == DECK41_FLOORTYPE_SAND) || (types.first == DECK41_FLOORTYPE_SILT)
208 || (types.first == DECK41_FLOORTYPE_MUD) || (types.first == DECK41_FLOORTYPE_HARDBOTTOM);
209 bool second = (types.second == DECK41_FLOORTYPE_ROCKS) || (types.second == DECK41_FLOORTYPE_ORGANIC) ||
210 (types.second == DECK41_FLOORTYPE_NODULES) || (types.second == DECK41_FLOORTYPE_NODATA) ||
211 (types.second == DECK41_FLOORTYPE_HARDBOTTOM);
213 return ( (equal && first ) || (first && second));
217 bool first = (types.first == DECK41_FLOORTYPE_NODATA);
218 bool second = (types.second == DECK41_FLOORTYPE_GRAVEL) || (types.second == DECK41_FLOORTYPE_SAND) ||
219 (types.second == DECK41_FLOORTYPE_SILT) || (types.second == DECK41_FLOORTYPE_MUD);
221 return (first && second);
225 bool first = (types.first == DECK41_FLOORTYPE_CLAY) || (types.first == DECK41_FLOORTYPE_OOZE) || (types.first == DECK41_FLOORTYPE_ORGANIC)
226 || (types.first == DECK41_FLOORTYPE_ROCKS) || (types.first == DECK41_FLOORTYPE_NODULES);
227 bool second = (types.second == DECK41_FLOORTYPE_ROCKS) || (types.second == DECK41_FLOORTYPE_ORGANIC) ||
228 (types.second == DECK41_FLOORTYPE_NODULES) || (types.second == DECK41_FLOORTYPE_NODATA) ||
229 (types.second == DECK41_FLOORTYPE_HARDBOTTOM);
231 return (first && second);
235 if ( types.first == DECK41_FLOORTYPE_ORGANIC )
return true;
237 bool first = (types.first == DECK41_FLOORTYPE_ROCKS) || (types.first == DECK41_FLOORTYPE_NODULES) ||
238 (types.first == DECK41_FLOORTYPE_NODATA) ;
239 bool second = (types.second == DECK41_FLOORTYPE_GRAVEL) || (types.second == DECK41_FLOORTYPE_SAND) ||
240 (types.second == DECK41_FLOORTYPE_SILT) || (types.second == DECK41_FLOORTYPE_MUD);
242 return (first && second);
247 bool nequal = types.first != types.second;
248 bool first = (types.first == DECK41_FLOORTYPE_GRAVEL) || (types.first == DECK41_FLOORTYPE_SAND) || (types.first == DECK41_FLOORTYPE_SILT)
249 || (types.first == DECK41_FLOORTYPE_MUD);
250 bool second = first || (types.second == DECK41_FLOORTYPE_OOZE) || (types.second == DECK41_FLOORTYPE_CLAY);
251 bool special = (types.first == DECK41_FLOORTYPE_OOZE) && (types.second == DECK41_FLOORTYPE_CLAY);
253 return ( (first && second && nequal) || special );
257 bool nequal = types.first != types.second;
258 bool first = (types.first == DECK41_FLOORTYPE_CLAY) || (types.first == DECK41_FLOORTYPE_OOZE);
259 bool second = (types.second == DECK41_FLOORTYPE_GRAVEL) || (types.second == DECK41_FLOORTYPE_SAND) || (types.second == DECK41_FLOORTYPE_SILT)
260 || (types.second == DECK41_FLOORTYPE_MUD) || (types.second == DECK41_FLOORTYPE_OOZE);
262 return (first && second && nequal);
266 return ( (types.first == DECK41_FLOORTYPE_NODATA) && (types.second == DECK41_FLOORTYPE_NODATA));
Abstraction layer for database and data manipulation.
Definition sediment-deck41-db-logic-control.h:74
bool condition_e
Definition sediment-deck41-db-logic-control.h:194
~Deck41TypeTests()=default
constexpr bool getConditionF() const
Definition sediment-deck41-db-logic-control.h:170
bool condition_g
Definition sediment-deck41-db-logic-control.h:198
constexpr bool conditionFloorC(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:224
constexpr bool getConditionA() const
Definition sediment-deck41-db-logic-control.h:140
bool condition_b
Definition sediment-deck41-db-logic-control.h:188
constexpr bool conditionFloorA(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:205
constexpr bool getConditionD() const
Definition sediment-deck41-db-logic-control.h:158
constexpr bool getConditionB() const
Definition sediment-deck41-db-logic-control.h:146
constexpr bool getConditionE() const
Definition sediment-deck41-db-logic-control.h:164
constexpr Deck41TypeTests()=default
constexpr bool getConditionG() const
Definition sediment-deck41-db-logic-control.h:176
constexpr void updateAllConditions(const Deck41Types &types)
Definition sediment-deck41-db-logic-control.h:269
constexpr bool conditionFloorE(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:246
constexpr bool getConditionC() const
Definition sediment-deck41-db-logic-control.h:152
constexpr bool conditionFloorG(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:265
constexpr bool conditionFloorD(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:234
bool condition_f
Definition sediment-deck41-db-logic-control.h:196
constexpr bool conditionFloorF(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:256
bool condition_d
Definition sediment-deck41-db-logic-control.h:192
constexpr bool conditionFloorB(const Deck41Types &types) const
Definition sediment-deck41-db-logic-control.h:216
bool condition_a
Definition sediment-deck41-db-logic-control.h:186
bool condition_c
Definition sediment-deck41-db-logic-control.h:190
Definition ac-toolbox-arr-asc-reader.h:44
std::pair< int, int > Deck41Types
Definition sediment-definitions.h:46
Definitions and library for woss::Sediment class.