AxesNames

DDAxes

DDAxesNames

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
#ifndef DDAxes_h
#define DDAxes_h

#include "DetectorDescription/Core/interface/Singleton.h"

#include <string>
#include <map>

//! analagous to geant4/source/global/HEPGeometry/include/geomdefs.hh

enum class DDAxes { x, y, z, rho, radial3D, phi, undefined };

class AxesNames {
public:
  AxesNames();
  ~AxesNames();

  const std::string name(const DDAxes& s);

private:
  std::map<std::string, DDAxes> axesmap_;
};

class DDAxesNames : public DDI::Singleton<AxesNames> {
public:
  static const std::string name(const DDAxes& s);
};

#endif  // DDAxes_h