BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
MdcAlignAlg/share/distAlign/src/include/MdcCosLayer.h
Go to the documentation of this file.
1/* Class MdcCosLayer describes the sense layer property */
2/* Created by Wu Linghui, 2006/05/28 */
3
4#ifndef MDCCOSLAYER_H
5#define MDCCOSLAYER_H
6
8public:
9 /* /\* constructor *\/ */
10 /* MdcCosLayer(); */
11
12 /* /\* destructor *\/ */
13 /* ~MdcCosLayer(); */
14
15 /* get layer type, 0 for axial, 1 for stereo-, 2 for stereo+ */
16 int getLayerType() const { return m_typ; }
17
18 /* get the number of cells in the layer */
19 int getNcell() const { return m_ncell; }
20
21 /* get layer radius and the endplate */
22 double getLayerRad() const { return m_rad; }
23
24 /* get wire length in the layer in z direction, [mm] */
25 double getLength() const { return m_length; }
26
27 /* get number of twist cells */
28 double getTwistCell() const { return m_twist; }
29
30 /* get slant angle */
31 double getSlant() const { return m_slant; }
32
33 /* get the index of the alignment parameter */
34 int getAlignParId( int i ) const { return m_iAlignPar[i]; }
35
36 /* get flag of inner chamber, true for inner, false for outer */
37 bool isInner() const { return m_fginner; }
38
39 /* set layer type, 0 for axial, 1 for stereo-, 2 for stereo+ */
40 void setLayerType( int type ) { m_typ = type; }
41
42 /* set the number of cells in the layer */
43 void setNcell( int ncell ) { m_ncell = ncell; }
44
45 /* set layer radius and the endplate */
46 void setLayerRad( double rad ) { m_rad = rad; }
47
48 /* set wire length in the layer in z direction, [mm] */
49 void setLength( double length ) { m_length = length; }
50
51 /* set number of twist cells */
52 void setTwistCell( double twist ) { m_twist = twist; }
53
54 /* set slant angle */
55 void setSlant( double slant ) { m_slant = slant; }
56
57 /* set flag of inner chamber, true for inner, false for outer */
58 void setFgInner( bool fginner ) { m_fginner = fginner; }
59
60 /* set the index of the alignment parameter */
61 void setAlignParId( int ipar[] );
62
63private:
64 /* std::string m_fname; */
65 /* MdcCosWire* m_wire[WIRENMAX]; */
66 /* int m_wiretable[LAYERNMAX][CELLNMAX]; */
67
68 int m_typ;
69 int m_ncell;
70 int m_iAlignPar[6];
71 double m_rad;
72 double m_length;
73 double m_twist;
74 double m_slant;
75 bool m_fginner;
76};
77
78inline void MdcCosLayer::setAlignParId( int ipar[] ) {
79 for ( int i = 0; i < 6; i++ ) { m_iAlignPar[i] = ipar[i]; }
80}
81
82#endif /* MDCCOSLAYER_H */