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 <array>
8 #include <map>
9 #include <string>
10 #include <vector>
11 
13 public:
14  typedef std::map<std::string, AlignPCLThreshold> threshold_map;
16 
18  virtual ~AlignPCLThresholds() {}
19 
20  void setAlignPCLThreshold(const std::string &AlignableId, const AlignPCLThreshold &Threshold);
21  void setAlignPCLThresholds(const int &Nrecords, const threshold_map &Thresholds);
22  void setNRecords(const int &Nrecords);
23 
24  const threshold_map &getThreshold_Map() const { return m_thresholds; }
25  const int &getNrecords() const { return m_nrecords; }
26 
27  AlignPCLThreshold getAlignPCLThreshold(const std::string &AlignableId) const;
29 
30  float getSigCut(const std::string &AlignableId, const coordType &type) const;
31  float getCut(const std::string &AlignableId, const coordType &type) const;
32  float getMaxMoveCut(const std::string &AlignableId, const coordType &type) const;
33  float getMaxErrorCut(const std::string &AlignableId, const coordType &type) const;
34 
35  // overloaded methods to get all the coordinates
36  std::array<float, 6> getSigCut(const std::string &AlignableId) const;
37  std::array<float, 6> getCut(const std::string &AlignableId) const;
38  std::array<float, 6> getMaxMoveCut(const std::string &AlignableId) const;
39  std::array<float, 6> getMaxErrorCut(const std::string &AlignableId) const;
40 
41  std::array<float, 4> getExtraDOFCutsForAlignable(const std::string &AlignableId, const unsigned int i) const;
42  std::string getExtraDOFLabelForAlignable(const std::string &AlignableId, const unsigned int i) const;
43 
44  double size() const { return m_thresholds.size(); }
45  std::vector<std::string> getAlignableList() const;
46 
47  void printAll() const;
48 
49 protected:
52 
54 };
55 
56 #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