CMS 3D CMS Logo

SurveyPxbImage.h
Go to the documentation of this file.
1 #ifndef GUARD_surveypxbimage_h
2 #define GUARD_surveypxbimage_h
3 
4 #include <sstream>
5 #include <vector>
6 #include <utility>
10 
13 public:
14  typedef unsigned int count_t;
15  typedef unsigned int id_t;
16  typedef double value_t;
18  typedef std::pair<id_t, id_t> idPair_t;
19 
21  enum location {
22  ll, // lower left mark (0)
23  ul, // upper left mark (1)
24  lr, // lower right mark (2)
25  ur // upper right mark (3)
26  };
27 
28  // Constructors
51  SurveyPxbImage(std::istringstream &iss) : isValidFlag_(false) { fill(iss); };
52 
53  void fill(std::istringstream &iss);
54 
56  id_t getIdFirst() { return idPair_.first; };
58  id_t getIdSecond() { return idPair_.second; };
60  const idPair_t getIdPair() { return idPair_; };
61 
65  const coord_t getCoord(count_t m);
66 
68  value_t getSigmaX() { return sigma_x_; }
69 
71  value_t getSigmaY() { return sigma_y_; }
72 
74  bool isValid() { return isValidFlag_; };
75 
76 protected:
78  std::vector<coord_t> measurementVec_;
79 
81  value_t sigma_x_, sigma_y_;
82 
84  bool isRotated_;
85 
88 
91  idPair_t idPair_;
92 };
93 
94 #endif
value_t getSigmaY()
Get Gaussian error in u direction.
SurveyPxbImage(std::istringstream &iss)
unsigned int count_t
value_t sigma_x_
Gaussian errors.
void fill(std::istringstream &iss)
Point3DBase< value_t, LocalTag > coord_t
bool isRotated_
Flag if the image was rotated or not.
bool isValidFlag_
Validity Flag.
id_t getIdFirst()
Get Id of first module.
location
enum to help access specific locations on a picture
Class to hold one picture of the BPix survey.
std::vector< coord_t > measurementVec_
Vector to hold four measurements.
unsigned int id_t
std::pair< id_t, id_t > idPair_t
id_t getIdSecond()
Get Id of second module.
const coord_t getCoord(count_t m)
const idPair_t getIdPair()
Get Id pair.
idPair_t idPair_
value_t getSigmaX()
Get Gaussian error in u direction.
bool isValid()
returns validity flag