move string conversion of WellWELTARGCMode to WellEnums.cpp
This commit is contained in:
@@ -88,7 +88,6 @@ public:
|
||||
using ProducerCMode = WellProducerCMode;
|
||||
|
||||
using WELTARGCMode = WellWELTARGCMode;
|
||||
static WELTARGCMode WELTARGCModeFromString(const std::string& stringValue);
|
||||
|
||||
using GuideRateTarget = WellGuideRateTarget;
|
||||
static const std::string GuideRateTarget2String(GuideRateTarget enumValue);
|
||||
|
||||
@@ -114,6 +114,8 @@ std::string WellProducerCMode2String(WellProducerCMode enumValue);
|
||||
WellProducerCMode WellProducerCModeFromString(const std::string& stringValue);
|
||||
std::ostream& operator<<(std::ostream& os, const WellProducerCMode& cm);
|
||||
|
||||
WellWELTARGCMode WellWELTARGCModeFromString(const std::string& stringValue);
|
||||
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1533,7 +1533,7 @@ Well{0} entered with disallowed 'FIELD' parent group:
|
||||
if (well_names.empty())
|
||||
this->invalidNamePattern( wellNamePattern, handlerContext);
|
||||
|
||||
const auto cmode = Well::WELTARGCModeFromString(record.getItem("CMODE").getTrimmedString(0));
|
||||
const auto cmode = WellWELTARGCModeFromString(record.getItem("CMODE").getTrimmedString(0));
|
||||
const auto new_arg = record.getItem("NEW_VALUE").get<UDAValue>(0);
|
||||
|
||||
for (const auto& well_name : well_names) {
|
||||
@@ -2205,7 +2205,7 @@ Well{0} entered with disallowed 'FIELD' parent group:
|
||||
throw OpmInputError(reason, handlerContext.keyword.location());
|
||||
}
|
||||
|
||||
const auto cmode = Well::WELTARGCModeFromString(control);
|
||||
const auto cmode = WellWELTARGCModeFromString(control);
|
||||
if (cmode == Well::WELTARGCMode::GUID)
|
||||
throw std::logic_error("Multiplying guide rate is not implemented");
|
||||
|
||||
|
||||
@@ -1557,43 +1557,6 @@ void Well::setWellTemperature(const double temp) {
|
||||
this->well_temperature = temp;
|
||||
}
|
||||
|
||||
Well::WELTARGCMode Well::WELTARGCModeFromString(const std::string& string_value) {
|
||||
if (string_value == "ORAT")
|
||||
return WELTARGCMode::ORAT;
|
||||
|
||||
if (string_value == "WRAT")
|
||||
return WELTARGCMode::WRAT;
|
||||
|
||||
if (string_value == "GRAT")
|
||||
return WELTARGCMode::GRAT;
|
||||
|
||||
if (string_value == "LRAT")
|
||||
return WELTARGCMode::LRAT;
|
||||
|
||||
if (string_value == "CRAT")
|
||||
return WELTARGCMode::CRAT;
|
||||
|
||||
if (string_value == "RESV")
|
||||
return WELTARGCMode::RESV;
|
||||
|
||||
if (string_value == "BHP")
|
||||
return WELTARGCMode::BHP;
|
||||
|
||||
if (string_value == "THP")
|
||||
return WELTARGCMode::THP;
|
||||
|
||||
if (string_value == "VFP")
|
||||
return WELTARGCMode::VFP;
|
||||
|
||||
if (string_value == "LIFT")
|
||||
return WELTARGCMode::LIFT;
|
||||
|
||||
if (string_value == "GUID")
|
||||
return WELTARGCMode::GUID;
|
||||
|
||||
throw std::invalid_argument("WELTARG control mode: " + string_value + " not recognized.");
|
||||
}
|
||||
|
||||
const std::string Well::GuideRateTarget2String( GuideRateTarget enumValue ) {
|
||||
switch( enumValue ) {
|
||||
case GuideRateTarget::OIL:
|
||||
|
||||
@@ -166,4 +166,42 @@ std::ostream& operator<<(std::ostream& os, const WellProducerCMode& cm)
|
||||
return os;
|
||||
}
|
||||
|
||||
WellWELTARGCMode WellWELTARGCModeFromString(const std::string& string_value)
|
||||
{
|
||||
if (string_value == "ORAT")
|
||||
return WellWELTARGCMode::ORAT;
|
||||
|
||||
if (string_value == "WRAT")
|
||||
return WellWELTARGCMode::WRAT;
|
||||
|
||||
if (string_value == "GRAT")
|
||||
return WellWELTARGCMode::GRAT;
|
||||
|
||||
if (string_value == "LRAT")
|
||||
return WellWELTARGCMode::LRAT;
|
||||
|
||||
if (string_value == "CRAT")
|
||||
return WellWELTARGCMode::CRAT;
|
||||
|
||||
if (string_value == "RESV")
|
||||
return WellWELTARGCMode::RESV;
|
||||
|
||||
if (string_value == "BHP")
|
||||
return WellWELTARGCMode::BHP;
|
||||
|
||||
if (string_value == "THP")
|
||||
return WellWELTARGCMode::THP;
|
||||
|
||||
if (string_value == "VFP")
|
||||
return WellWELTARGCMode::VFP;
|
||||
|
||||
if (string_value == "LIFT")
|
||||
return WellWELTARGCMode::LIFT;
|
||||
|
||||
if (string_value == "GUID")
|
||||
return WellWELTARGCMode::GUID;
|
||||
|
||||
throw std::invalid_argument("WELTARG control mode: " + string_value + " not recognized.");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user