Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
JDETECTOR::JGetDetectorVersion Struct Reference

Auxiliary class to map detector variant to detector version. More...

#include <JDetectorVersion.hh>

Inheritance diagram for JDETECTOR::JGetDetectorVersion:
std::map< std::string, JDetectorVersion::JVersion_t >

Public Member Functions

 JGetDetectorVersion ()
 Default constructor. More...
 
JDetectorVersion::JVersion_t operator() (const std::string &variant) const
 Get detector version. More...
 
JDetectorVersion::JVersion_t operator() (const JDetectorVersion &version) const
 Get detector version. More...
 

Detailed Description

Auxiliary class to map detector variant to detector version.

Definition at line 69 of file JDetectorVersion.hh.

Constructor & Destructor Documentation

JDETECTOR::JGetDetectorVersion::JGetDetectorVersion ( )
inline

Default constructor.

Definition at line 75 of file JDetectorVersion.hh.

76  {
77  using namespace JPP;
78 
79 #define MAKE_ENTRY(A) std::make_pair(to_upper(getClassname(#A)), A)
80 
81  this->insert(MAKE_ENTRY(JDetectorVersion::V1));
82  this->insert(MAKE_ENTRY(JDetectorVersion::V2));
83  this->insert(MAKE_ENTRY(JDetectorVersion::V3));
84 
85 #undef MAKE_ENTRY
86  }
Version with UTC time and UTM position data.
Version with PMT status field and comments.
#define MAKE_ENTRY(A)

Member Function Documentation

JDetectorVersion::JVersion_t JDETECTOR::JGetDetectorVersion::operator() ( const std::string &  variant) const
inline

Get detector version.

Parameters
variantvariant
Returns
version

Definition at line 95 of file JDetectorVersion.hh.

96  {
97  using namespace JPP;
98 
99  const_iterator i = this->find(to_upper(variant));
100 
101  if (i != this->end()) {
102 
103  return i->second;
104 
105  } else {
106 
107  THROW(JTypeInformationException, "Invalid variant <" << variant << ">");
108  }
109  }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:633
std::string to_upper(const std::string &value)
Convert all character to upper case.
JDetectorVersion::JVersion_t JDETECTOR::JGetDetectorVersion::operator() ( const JDetectorVersion version) const
inline

Get detector version.

Parameters
versionversion
Returns
version

Definition at line 118 of file JDetectorVersion.hh.

119  {
120  return (*this)(version.getVariant());
121  }
const std::string & getVariant() const
Get variant.
Definition: JVersion.hh:90

The documentation for this struct was generated from the following file: