diff --git a/Detector/Calo/include/Detector/Calo/DeCalorimeter.h b/Detector/Calo/include/Detector/Calo/DeCalorimeter.h index d38be2bad5da78ab266a3ecd5309fb500eecb0f0..b3ead237e43570b58053bd90a224cb78f8dd2b77 100644 --- a/Detector/Calo/include/Detector/Calo/DeCalorimeter.h +++ b/Detector/Calo/include/Detector/Calo/DeCalorimeter.h @@ -29,6 +29,25 @@ namespace LHCb::Detector::Calo { /// definition of calorimeter planes enum Plane { Front = 0, Middle, ShowerMax, Back }; + inline std::string toString( Plane e ) { + switch ( e ) { + case Plane::Front: + return "Front"; + case Plane::ShowerMax: + return "ShowerMax"; + case Plane::Middle: + return "Middle"; + case Plane::Back: + return "Back"; + default: + throw "Not a correct plane in Calo"; + } + } + + inline std::ostream& toStream( Plane e, std::ostream& os ) { return os << std::quoted( toString( e ), '\'' ); } + + inline std::ostream& operator<<( std::ostream& s, Plane e ) { return toStream( e, s ); } + namespace detail { struct DeCaloObject : LHCb::Detector::detail::DeIOVObject {