34 enum class FilterFlag {
43 const std::string& name,
44 const std::string& master_group_name,
45 FilterFlag oil_prod_flag,
46 FilterFlag liquid_prod_flag,
47 FilterFlag gas_prod_flag,
48 FilterFlag fluid_volume_prod_flag,
49 FilterFlag oil_inj_flag,
50 FilterFlag water_inj_flag,
51 FilterFlag gas_inj_flag
54 m_master_group_name{master_group_name},
55 m_oil_prod_flag{oil_prod_flag},
56 m_liquid_prod_flag{liquid_prod_flag},
57 m_gas_prod_flag{gas_prod_flag},
58 m_fluid_volume_prod_flag{fluid_volume_prod_flag},
59 m_oil_inj_flag{oil_inj_flag},
60 m_water_inj_flag{water_inj_flag},
61 m_gas_inj_flag{gas_inj_flag}
64 static GrupSlav serializationTestObject();
66 const std::string& name()
const {
70 const std::string& masterGroupName()
const {
71 return this->m_master_group_name;
74 FilterFlag oilProdFlag()
const {
75 return this->m_oil_prod_flag;
78 FilterFlag liquidProdFlag()
const {
79 return this->m_liquid_prod_flag;
82 FilterFlag gasProdFlag()
const {
83 return this->m_gas_prod_flag;
86 FilterFlag fluidVolumeProdFlag()
const {
87 return this->m_fluid_volume_prod_flag;
90 FilterFlag oilInjFlag()
const {
91 return this->m_oil_inj_flag;
94 FilterFlag waterInjFlag()
const {
95 return this->m_water_inj_flag;
98 FilterFlag gasInjFlag()
const {
99 return this->m_gas_inj_flag;
102 void name(
const std::string& value) {
103 this->m_name = value;
106 void masterGroupName(
const std::string& value) {
107 this->m_master_group_name = value;
110 bool operator==(
const GrupSlav& other)
const;
112 template<
class Serializer>
116 serializer(m_master_group_name);
117 serializer(m_oil_prod_flag);
118 serializer(m_liquid_prod_flag);
119 serializer(m_gas_prod_flag);
120 serializer(m_fluid_volume_prod_flag);
121 serializer(m_oil_inj_flag);
122 serializer(m_water_inj_flag);
123 serializer(m_gas_inj_flag);
126 static FilterFlag filterFlagFromString(
const std::string& flag) {
127 if (flag ==
"MAST") {
128 return FilterFlag::MAST;
129 }
else if (flag ==
"SLAV") {
130 return FilterFlag::SLAV;
131 }
else if (flag ==
"BOTH") {
132 return FilterFlag::BOTH;
134 throw std::invalid_argument(
"Invalid filter flag: " + flag);
138 std::string m_name{};
139 std::string m_master_group_name{};
140 FilterFlag m_oil_prod_flag{FilterFlag::BOTH};
141 FilterFlag m_liquid_prod_flag{FilterFlag::BOTH};
142 FilterFlag m_gas_prod_flag{FilterFlag::BOTH};
143 FilterFlag m_fluid_volume_prod_flag{FilterFlag::BOTH};
144 FilterFlag m_oil_inj_flag{FilterFlag::BOTH};
145 FilterFlag m_water_inj_flag{FilterFlag::BOTH};
146 FilterFlag m_gas_inj_flag{FilterFlag::BOTH};
Definition HandlerContext.hpp:54