diff --git a/CEP/BB/BBSControl/src/BBSStep.cc b/CEP/BB/BBSControl/src/BBSStep.cc index ec6b588d98072ca458810032ac55f2ef9846298c..0544bdb586dc708a5973e54c11386c0d76a61899 100644 --- a/CEP/BB/BBSControl/src/BBSStep.cc +++ b/CEP/BB/BBSControl/src/BBSStep.cc @@ -191,9 +191,8 @@ namespace LOFAR // type (e.g., ["XX", "XY", "YX", "YY"] try { string sel = ps.getString("Correlation.Selection"); - if (sel == "ALL") itsCorrelation.selection = Correlation::ALL; - else if (sel == "AUTO") itsCorrelation.selection = Correlation::AUTO; - else if (sel == "CROSS") itsCorrelation.selection = Correlation::CROSS; + if (sel == "ALL" || sel == "AUTO" || sel == "CROSS") + itsCorrelation.selection = sel; else THROW(BBSControlException, "Invalid correlation selection " << sel); itsCorrelation.type = ps.getStringVector("Correlation.Type"); diff --git a/CEP/BB/BBSControl/src/BBSStrategy.cc b/CEP/BB/BBSControl/src/BBSStrategy.cc index 2e08f9d096acd9d20a941e831354366e4905e144..b8984ed4b91c205b7d76ed99e091dd467141391c 100644 --- a/CEP/BB/BBSControl/src/BBSStrategy.cc +++ b/CEP/BB/BBSControl/src/BBSStrategy.cc @@ -89,10 +89,10 @@ namespace LOFAR // Get the correlation product selection (ALL, AUTO, or CROSS) string sel = ps.getString("Correlation.Selection"); - if (sel == "ALL") itsCorrelation.selection = Correlation::ALL; - else if (sel == "AUTO") itsCorrelation.selection = Correlation::AUTO; - else if (sel == "CROSS") itsCorrelation.selection = Correlation::CROSS; - else THROW(BBSControlException, + if (sel == "ALL" || sel == "AUTO" || sel == "CROSS") + itsCorrelation.selection = sel; + else + THROW(BBSControlException, "Invalid correlation selection " << sel); itsCorrelation.type = ps.getStringVector("Correlation.Type"); diff --git a/CEP/BB/BBSControl/src/BBSStructs.cc b/CEP/BB/BBSControl/src/BBSStructs.cc index a82bf449d70d95ba79f5ed4428977dfaac8fd461..57b2b8da30dda8e802fa70ddbdb7a6306a4fa1ae 100644 --- a/CEP/BB/BBSControl/src/BBSStructs.cc +++ b/CEP/BB/BBSControl/src/BBSStructs.cc @@ -112,7 +112,7 @@ namespace LOFAR BlobOStream& operator<<(BlobOStream& bos, const Correlation& obj) { - bos << static_cast<int32>(obj.selection) + bos << obj.selection << obj.type; return bos; } @@ -167,8 +167,7 @@ namespace LOFAR BlobIStream& operator>>(BlobIStream& bis, Correlation& obj) { int32 selection; - bis >> selection; - obj.selection = static_cast<Correlation::Selection>(selection); + bis >> obj.selection; bis >> obj.type; return bis; }