CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
OpticalAlignInfo.h
Go to the documentation of this file.
1 #ifndef OpticalAlignInfo_H
2 #define OpticalAlignInfo_H
3 
4 #include <string>
5 #include <vector>
6 #include <iostream>
7 
9 
14 class OpticalAlignInfo;
15 
16 std::ostream & operator<<(std::ostream &, const OpticalAlignInfo &);
17 
22 class OpticalAlignParam;
23 
24 std::ostream & operator<<(std::ostream &, const OpticalAlignParam &);
25 
26 
34  public:
37 
38  std::string name() const { return name_; }
39  double value() const { return value_; }
40  double sigma() const { return error_; }
41  int quality() const { return quality_; }
42  std::string dimType() const { return dim_type_; }
43 
44  public:
45  double value_;
46  double error_;
47  int quality_; // f = fixed, c = calibrated, u = unknown.
48  std::string name_;
49  std::string dim_type_;
50 
51  void clear() {
52  value_ = 0.0;
53  error_ = 0.0;
54  quality_ = int( oa_unknown );
55  name_.clear();
56  }
57 };
58 
59 // a Class holding data for an Optical Alignment transformation
69  public:
70  /*
71  OpticalAlignParam x() const { return x_; }
72  OpticalAlignParam y() const { return y_; }
73  OpticalAlignParam z() const { return z_; }
74  OpticalAlignParam angX() const { return angx_; }
75  OpticalAlignParam angY() const { return angy_; }
76  OpticalAlignParam angZ() const { return angz_; }
77  std::vector<OpticalAlignParam> extraEntries() const { return extraEntries_; }
78  std::string type() { return type_; }
79  std::string name() const { return name_; }
80  std::string parentName() const { return parentObjectName_; }
81  unsigned int ID() const { return ID_; }
82  */
83  OpticalAlignParam* findExtraEntry( std::string& name );
84 
85  public:
87  std::vector<OpticalAlignParam> extraEntries_;
88  std::string type_;
89  std::string name_;
90  std::string parentName_;
91  unsigned int ID_;
92  void clear() {
93  x_.clear();
94  y_.clear();
95  z_.clear();
96  angx_.clear();
97  angy_.clear();
98  angz_.clear();
99  extraEntries_.clear();
100  type_.clear();
101  ID_ = 0;
102  }
103 };
104 
105 
114 /* class OpticalAlignCOPSInfo : public OpticalAlignInfo { */
115 /* public: */
116 /* OpticalAlignParam dowel1X_, dowel1Y_; */
117 /* OpticalAlignParam upCCDtoDowel2X_, upCCDtoDowel2Y_; */
118 /* OpticalAlignParam downCCDtoDowel2X_, downCCDtoDowel2Y_; */
119 /* OpticalAlignParam leftCCDtoDowel2X_, leftCCDtoDowel2Y_; */
120 /* OpticalAlignParam rightCCDtoDowel2X_, rightCCDtoDowel2Y_; */
121 /* }; */
122 
123 #endif //OpticalAlignInfo_H
int quality() const
std::string parentName_
OpticalAlignParam x_
std::string name() const
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
double sigma() const
std::string dimType() const
OpticalAlignParam angx_
OpticalAlignParam * findExtraEntry(std::string &name)
OpticalAlignParam y_
double value() const
OpticalAlignParam angz_
OpticalAlignParam z_
std::vector< OpticalAlignParam > extraEntries_
OpticalAlignParam angy_
std::string dim_type_
unsigned int ID_