Revision: | 1.4 |
Committed: | Tue Mar 13 03:11:37 2007 UTC (18 years, 1 month ago) by cklae |
Content type: | text/plain |
Branch: | MAIN |
CVS Tags: | CMSSW_1_6_12, CMSSW_1_6_12_pre2, CMSSW_1_6_12_pre1, CMSSW_1_6_11, CMSSW_1_7_7, CMSSW_1_6_11_pre1, CMSSW_1_7_6, CMSSW_1_6_10, CMSSW_1_6_10_pre2, CMSSW_1_6_10_pre1, CMSSW_1_6_9, CMSSW_1_6_9_pre2, CMSSW_1_6_9_pre1, CMSSW_1_7_5, CMSSW_1_7_4, CMSSW_1_7_3, CMSSW_1_6_8, CMSSW_1_6_8_pre2, CMSSW_1_7_2, CMSSW_1_6_8_pre1, CMSSW_1_7_1, CMSSW_1_7_0, CMSSW_1_7_0_pre13, CMSSW_1_4_10, CMSSW_1_7_0_pre12, CMSSW_1_7_0_pre11, CMSSW_1_7_0_pre10, CMSSW_1_7_0_pre9, CMSSW_1_7_0_pre8, CMSSW_1_7_0_pre7, CMSSW_1_4_9, CMSSW_1_4_8, CMSSW_1_6_7, CMSSW_1_7_0_pre6, CMSSW_1_6_6, CMSSW_1_6_5, CMSSW_1_6_5_pre1, CMSSW_1_6_4, CMSSW_1_7_0_pre5, CMSSW_1_6_3, CMSSW_1_6_1, CMSSW_1_7_0_pre4, V01-04-00-08, CMSSW_1_7_0_pre3, CMSSW_1_7_0_pre2, CMSSW_1_6_0, CMSSW_1_6_0_pre14, CMSSW_1_7_0_pre1, CMSSW_1_6_0_DAQ3, CMSSW_1_6_0_pre13, CMSSW_1_6_0_pre12, CMSSW_1_6_0_pre11, CMSSW_1_6_0_pre10, CMSSW_1_4_7, CMSSW_1_6_0_pre9, CMSSW_1_6_0_pre8, CMSSW_1_5_4, CMSSW_1_6_0_pre7, CMSSW_1_5_3, CMSSW_1_6_0_pre6, CMSSW_1_4_6, CMSSW_1_6_0_DAQ1, CMSSW_1_6_0_pre5, V01-04-00-07, V01-09-00, V01-04-00-06, CMSSW_1_6_0_pre4, CMSSW_1_5_2, CMSSW_1_6_0_pre3, CMSSW_1_6_0_pre2, CMSSW_1_6_0_pre1, CMSSW_1_5_1, CMSSW_1_4_5, CMSSW_1_5_0, V01-08-01, V01-04-00-05, CMSSW_1_4_3g483, CMSSW_1_4_4, CMSSW_1_5_0_pre6, CMSSW_1_4_3, V01-04-00-03, V01-08-00, CMSSW_1_5_0_pre5, CMSSW_1_4_2, CMSSW_1_4_1, CMSSW_1_5_0_pre4, V01-07-04, CMSSW_1_5_0_pre3, V01-07-03, V01-07-02, CMSSW_1_4_0_DAQ1, V01-06-01, V01-07-01, V01-04-00-02, CMSSW_1_4_0, CMSSW_1_5_0_pre2, CMSSW_1_4_0_pre7, CMSSW_1_4_0_pre6, CMSSW_1_4_0_pre5, V01-07-00, V01-04-00-01, CMSSW_1_5_0_pre1, CMSSW_1_4_0_pre4, V01-06-00, V01-05-00, V01-04-01, CMSSW_1_4_0_pre3, V01-04-00, V01-03-01, V01-03-00, cklae_20070314 |
Branch point for: | V01-04-00-04 |
Changes since 1.3: | +11 -14 lines |
Log Message: | Change Surface:: to align:: |
# | User | Rev | Content |
---|---|---|---|
1 | fronga | 1.1 | #ifndef Alignment_CommonAlignmentAlgorithm_AlignableData_h |
2 | #define Alignment_CommonAlignmentAlgorithm_AlignableData_h | ||
3 | |||
4 | cklae | 1.4 | #include "Alignment/CommonAlignment/interface/Utilities.h" |
5 | fronga | 1.1 | |
6 | /// Helper class to store position data of an alignable; | ||
7 | /// Contents: position vector, rotation matrix, DetId and TypeId; | ||
8 | /// can be used for both absolute and relative positions/rotations | ||
9 | |||
10 | |||
11 | template<class T> class AlignableData | ||
12 | { | ||
13 | |||
14 | public: | ||
15 | |||
16 | /// constructor | ||
17 | cklae | 1.4 | AlignableData(const T& pos, |
18 | const align::RotationType& rot, | ||
19 | unsigned int id, int objid) : | ||
20 | fronga | 1.1 | thePos(pos), theRot(rot), theObjId(objid), theId(id) {} |
21 | |||
22 | /// accessors | ||
23 | cklae | 1.4 | const T& pos() const { return thePos; } |
24 | const align::RotationType& rot() const { return theRot; } | ||
25 | int objId() const { return theObjId; } | ||
26 | unsigned int id() const { return theId; } | ||
27 | fronga | 1.1 | |
28 | private: | ||
29 | |||
30 | // data members | ||
31 | |||
32 | T thePos; | ||
33 | cklae | 1.4 | align::RotationType theRot; |
34 | fronga | 1.1 | int theObjId; |
35 | unsigned int theId; | ||
36 | |||
37 | }; | ||
38 | |||
39 | /// Absolute position/rotation | ||
40 | cklae | 1.4 | typedef AlignableData<align::GlobalPoint> AlignableAbsData; |
41 | fronga | 1.1 | /// relative position/rotation |
42 | cklae | 1.4 | typedef AlignableData<align::GlobalVector> AlignableRelData; |
43 | fronga | 1.1 | |
44 | typedef std::vector<AlignableAbsData> AlignablePositions; | ||
45 | typedef std::vector<AlignableRelData> AlignableShifts; | ||
46 | |||
47 | #endif | ||
48 |