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

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

#include <JDetectorVersion.hh>

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

Public Member Functions

 JPutDetectorVersion (const JGetDetectorVersion &input)
 Constructor. More...
 
const std::string & operator() (const JDetectorVersion::JVersion_t &version) const
 Put detector version. More...
 
int operator[] (const JDetectorVersion::JVersion_t &version) const
 Get index of detector version. More...
 

Detailed Description

Auxiliary class to map detector version to detector variant.

Definition at line 179 of file JDetectorVersion.hh.

Constructor & Destructor Documentation

JDETECTOR::JPutDetectorVersion::JPutDetectorVersion ( const JGetDetectorVersion input)
inline

Constructor.

Parameters
inputdetector versions

Definition at line 187 of file JDetectorVersion.hh.

188  {
189  using namespace std;
190 
191  for (JGetDetectorVersion::const_iterator i = input.begin(); i != input.end(); ++i) {
192  this->insert(make_pair(i->second, i->first));
193  }
194  }

Member Function Documentation

const std::string& JDETECTOR::JPutDetectorVersion::operator() ( const JDetectorVersion::JVersion_t version) const
inline

Put detector version.

Parameters
versionversion
Returns
version

Definition at line 203 of file JDetectorVersion.hh.

204  {
205  const_iterator i = this->find(version);
206 
207  if (i != this->end()) {
208  return i->second;
209  } else {
210  THROW(JTypeInformationException, "Invalid version <" << version << ">");
211  }
212  }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:670
version
Definition: JCalibratePMT.sh:7
int JDETECTOR::JPutDetectorVersion::operator[] ( const JDetectorVersion::JVersion_t version) const
inline

Get index of detector version.

Parameters
versionversion
Returns
index

Definition at line 221 of file JDetectorVersion.hh.

222  {
223  using namespace std;
224 
225  const_iterator i = this->find(version);
226 
227  if (i != this->end())
228  return distance(this->begin(), i);
229  else
230  return -1;
231  }
std::vector< T >::difference_type distance(typename std::vector< T >::const_iterator first, typename PhysicsEvent::const_iterator< T > second)
Specialisation of STL distance.
version
Definition: JCalibratePMT.sh:7

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