CMS 3D CMS Logo

AlignPCLThresholds.h
Go to the documentation of this file.
1 #ifndef CondFormats_PCLConfig_AlignPCLThresholds_h
2 #define CondFormats_PCLConfig_AlignPCLThresholds_h
3 
6 
7 #include <map>
8 #include <string>
9 #include <vector>
10 
12 public:
13  typedef std::map<std::string, AlignPCLThreshold> threshold_map;
15 
17  virtual ~AlignPCLThresholds() {}
18 
19  void setAlignPCLThreshold(const std::string &AlignableId, const AlignPCLThreshold &Threshold);
20  void setAlignPCLThresholds(const int &Nrecords, const threshold_map &Thresholds);
21  void setNRecords(const int &Nrecords);
22 
23  const threshold_map &getThreshold_Map() const { return m_thresholds; }
24  const int &getNrecords() const { return m_nrecords; }
25 
26  AlignPCLThreshold getAlignPCLThreshold(const std::string &AlignableId) const;
28 
29  float getSigCut(const std::string &AlignableId, const coordType &type) const;
30  float getCut(const std::string &AlignableId, const coordType &type) const;
31  float getMaxMoveCut(const std::string &AlignableId, const coordType &type) const;
32  float getMaxErrorCut(const std::string &AlignableId, const coordType &type) const;
33 
34  // overloaded methods to get all the coordinates
35  std::array<float, 6> getSigCut(const std::string &AlignableId) const;
36  std::array<float, 6> getCut(const std::string &AlignableId) const;
37  std::array<float, 6> getMaxMoveCut(const std::string &AlignableId) const;
38  std::array<float, 6> getMaxErrorCut(const std::string &AlignableId) const;
39 
40  std::array<float, 4> getExtraDOFCutsForAlignable(const std::string &AlignableId, const unsigned int i) const;
41  std::string getExtraDOFLabelForAlignable(const std::string &AlignableId, const unsigned int i) const;
42 
43  double size() const { return m_thresholds.size(); }
44  std::vector<std::string> getAlignableList() const;
45 
46  void printAll() const;
47 
48 protected:
51 
53 };
54 
55 #endif
void setAlignPCLThreshold(const std::string &AlignableId, const AlignPCLThreshold &Threshold)
std::string getExtraDOFLabelForAlignable(const std::string &AlignableId, const unsigned int i) const
std::map< std::string, AlignPCLThreshold > threshold_map
float getSigCut(const std::string &AlignableId, const coordType &type) const
const threshold_map & getThreshold_Map() const
float getCut(const std::string &AlignableId, const coordType &type) const
float getMaxMoveCut(const std::string &AlignableId, const coordType &type) const
const int & getNrecords() const
std::array< float, 4 > getExtraDOFCutsForAlignable(const std::string &AlignableId, const unsigned int i) const
float getMaxErrorCut(const std::string &AlignableId, const coordType &type) const
void setNRecords(const int &Nrecords)
threshold_map m_thresholds
void setAlignPCLThresholds(const int &Nrecords, const threshold_map &Thresholds)
#define COND_SERIALIZABLE
Definition: Serializable.h:39
std::vector< std::string > getAlignableList() const
AlignPCLThreshold getAlignPCLThreshold(const std::string &AlignableId) const