BOSS 7.1.0
BESIII Offline Software System
Loading...
Searching...
No Matches
MdcGeoLayer.h
Go to the documentation of this file.
1// $Id: MdcGeoLayer.h,v 1.6 2010/03/26 00:45:11 zhangy Exp $ // -*-c++-*-
2// header file for a class called "MdcGeoLayer"
3#ifndef MDC_GEO_LAYER_H
4#define MDC_GEO_LAYER_H
5
6#include <CLHEP/Geometry/Point3D.h>
7#include <iostream>
8#ifndef ENABLE_BACKWARDS_COMPATIBILITY
10#endif
11
12using namespace CLHEP;
13
14class MdcGeoSuper;
15
17
18 public:
19 // Constructor.
20 MdcGeoLayer():fId(0),fSLayer(0),fWirst(0),fSlant(0.),fnomSlant(0.),fRadius(0.),fLength(0.),fRCSiz1(0.),fRCSiz2(0.),
21 fPCSiz(0.),fNCell(0),fOffset(0.),fShift(0.),fnomOffset(0.),fnomShift(0.),fTwistF(0.),fTwistB(0.){
22 HepPoint3D O(0,0,0);
23 fOffF=O;
24 fOffB=O;
25 fSup=0;
26 fGenLayer=0;
27 };
28 // Copy and Assignment
30 fId=e.Id();
31 fSLayer=e.SLayer();
32 fWirst=e.Wirst();
33 fSlant=e.Slant();
34 fnomSlant=e.nomSlant();
35 fRadius=e.Radius();
36 fLength=e.Length();
37 fRCSiz1=e.RCSiz1();
38 fRCSiz2=e.RCSiz2();
39 fPCSiz=e.PCSiz();
40 fNCell=e.NCell();
41 fOffset=e.Offset();
42 fShift=e.Shift();
43 fnomOffset=e.nomOffset();
44 fnomShift=e.nomShift();
45 fTwistF=e.TwistF();
46 fTwistB=e.TwistB();
47 fOffF=e.OffF();
48 fOffB=e.OffB();
49 fSup=e.Sup();
50 fGenLayer=e.Gen();
51 };
53 if(this!=&e)
54 {
55 fId=e.Id();
56 fSLayer=e.SLayer();
57 fWirst=e.Wirst();
58 fSlant=e.Slant();
59 fnomSlant=e.nomSlant();
60 fRadius=e.Radius();
61 fLength=e.Length();
62 fRCSiz1=e.RCSiz1();
63 fRCSiz2=e.RCSiz2();
64 fPCSiz=e.PCSiz();
65 fNCell=e.NCell();
66 fOffset=e.Offset();
67 fShift=e.Shift();
68 fnomOffset=e.nomOffset();
69 fnomShift=e.nomShift();
70 fTwistF=e.TwistF();
71 fTwistB=e.TwistB();
72 fOffF=e.OffF();
73 fOffB=e.OffB();
74 fSup=e.Sup();
75 fGenLayer=e.Gen();
76 }
77 return *this;
78 }
79
80 // Destructor
82
83 public: // Extractors
84 int Id(void) const;
85 int SLayer(void) const;
86 int Wirst(void) const;
87 double Slant(void) const;
88 double nomSlant(void) const;
89 double Radius(void) const;
90 double Length(void) const;
91 double RCSiz1(void) const;
92 double RCSiz2(void) const;
93 double PCSiz(void) const;
94 int NCell(void) const;
95 double Offset(void) const;
96 double Shift(void) const;
97 double nomOffset(void) const;
98 double nomShift(void) const;
99 double TwistF(void) const;
100 double TwistB(void) const;
101 HepPoint3D OffF(void) const;
102 HepPoint3D OffB(void) const;
103 MdcGeoSuper * Sup(void) const;
104 int Gen(void) const;
105
106 public: // Modifiers
107 int Id(int);
108 int SLayer(int);
109 int Wirst(int);
110 double Slant(double);
111 double nomSlant(double);
112 double Radius(double);
113 double Length(double);
114 double RCSiz1(double);
115 double RCSiz2(double);
116 double PCSiz(double);
117 int NCell(int);
118 double Offset(double);
119 double Shift(double);
120 double nomOffset(double);
121 double nomShift(double);
122 double TwistF(double);
123 double TwistB(double);
127 int Gen(int);
128
129 private:
130 int fId;
131 int fSLayer; //SignalLayer
132 int fWirst; //No. of 1st sense wire in this layer.
133 double fSlant;
134 double fnomSlant;
135 double fRadius;
136 double fLength;
137 double fRCSiz1;
138 double fRCSiz2;
139 double fPCSiz;
140 int fNCell;
141 double fOffset;
142 double fShift;
143 double fnomOffset;
144 double fnomShift;
145 double fTwistF;
146 double fTwistB;
147 HepPoint3D fOffF;
148 HepPoint3D fOffB;
149 MdcGeoSuper * fSup;
150 int fGenLayer;
151};
152
153//-----------------------------------------------------
154// Extractors
155inline int MdcGeoLayer::Id(void) const { return fId; }
156inline int MdcGeoLayer::SLayer(void) const { return fSLayer; }
157inline int MdcGeoLayer::Wirst(void) const { return fWirst;}
158inline double MdcGeoLayer::Slant(void) const { return fSlant; }
159inline double MdcGeoLayer::nomSlant(void) const { return fnomSlant; }
160inline double MdcGeoLayer::Radius(void) const { return fRadius; }
161inline double MdcGeoLayer::Length(void) const { return fLength; }
162inline double MdcGeoLayer::RCSiz1(void) const { return fRCSiz1; }
163inline double MdcGeoLayer::RCSiz2(void) const { return fRCSiz2; }
164inline double MdcGeoLayer::PCSiz(void) const { return fPCSiz; }
165inline int MdcGeoLayer::NCell(void) const { return fNCell; }
166inline double MdcGeoLayer::Offset(void) const { return fOffset; }
167inline double MdcGeoLayer::Shift(void) const { return fShift; }
168inline double MdcGeoLayer::nomOffset(void) const { return fnomOffset; }
169inline double MdcGeoLayer::nomShift(void) const { return fnomShift; }
170inline double MdcGeoLayer::TwistF(void) const { return fTwistF; }
171inline double MdcGeoLayer::TwistB(void) const { return fTwistB; }
172inline HepPoint3D MdcGeoLayer::OffF(void) const { return fOffF;}
173inline HepPoint3D MdcGeoLayer::OffB(void) const { return fOffB;}
174inline MdcGeoSuper* MdcGeoLayer::Sup(void) const { return fSup; }
175inline int MdcGeoLayer::Gen(void) const {return fGenLayer;}
176
177// Modifiers
178inline int MdcGeoLayer::Id(int i) { return fId=i; }
179inline int MdcGeoLayer::SLayer(int i) { return fSLayer=i; }
180inline int MdcGeoLayer::Wirst(int i) { return fWirst=i; }
181inline double MdcGeoLayer::Slant(double i) { return fSlant=i; }
182inline double MdcGeoLayer::nomSlant(double i) { return fnomSlant=i; }
183inline double MdcGeoLayer::Radius(double i) { return fRadius=i; }
184inline double MdcGeoLayer::Length(double i) { return fLength=i; }
185inline double MdcGeoLayer::RCSiz1(double i) { return fRCSiz1=i; }
186inline double MdcGeoLayer::RCSiz2(double i) { return fRCSiz2=i; }
187inline double MdcGeoLayer::PCSiz(double i) { return fPCSiz=i; }
188inline int MdcGeoLayer::NCell(int i) { return fNCell=i; }
189inline double MdcGeoLayer::Offset(double i) { return fOffset=i; }
190inline double MdcGeoLayer::Shift(double i) { return fShift=i; }
191inline double MdcGeoLayer::nomOffset(double i) { return fnomOffset=i; }
192inline double MdcGeoLayer::nomShift(double i) { return fnomShift=i; }
193inline double MdcGeoLayer::TwistF(double i) { return fTwistF=i; }
194inline double MdcGeoLayer::TwistB(double i) { return fTwistB=i; }
195inline HepPoint3D MdcGeoLayer::OffF(HepPoint3D i) { return fOffF=i;}
196inline HepPoint3D MdcGeoLayer::OffB(HepPoint3D i) { return fOffB=i;}
197inline MdcGeoSuper* MdcGeoLayer::Sup(MdcGeoSuper* i) { return fSup=i; }
198inline int MdcGeoLayer::Gen(int i) {return fGenLayer=i;}
199//-----------------------------------------------------
200
201#endif /* MdcGeoLayer_CLASS */
202
HepGeom::Point3D< double > HepPoint3D
Definition: MdcGeoLayer.h:9
double TwistB(void) const
Definition: MdcGeoLayer.h:171
HepPoint3D OffF(void) const
Definition: MdcGeoLayer.h:172
int Id(void) const
Definition: MdcGeoLayer.h:155
MdcGeoLayer & operator=(const MdcGeoLayer &e)
Definition: MdcGeoLayer.h:52
double Radius(void) const
Definition: MdcGeoLayer.h:160
double Slant(void) const
Definition: MdcGeoLayer.h:158
int Gen(void) const
Definition: MdcGeoLayer.h:175
double RCSiz2(void) const
Definition: MdcGeoLayer.h:163
double Length(void) const
Definition: MdcGeoLayer.h:161
double PCSiz(void) const
Definition: MdcGeoLayer.h:164
HepPoint3D OffB(void) const
Definition: MdcGeoLayer.h:173
MdcGeoSuper * Sup(void) const
Definition: MdcGeoLayer.h:174
int SLayer(void) const
Definition: MdcGeoLayer.h:156
double nomShift(void) const
Definition: MdcGeoLayer.h:169
double Shift(void) const
Definition: MdcGeoLayer.h:167
double TwistF(void) const
Definition: MdcGeoLayer.h:170
double nomSlant(void) const
Definition: MdcGeoLayer.h:159
MdcGeoLayer(const MdcGeoLayer &e)
Definition: MdcGeoLayer.h:29
double RCSiz1(void) const
Definition: MdcGeoLayer.h:162
int NCell(void) const
Definition: MdcGeoLayer.h:165
int Wirst(void) const
Definition: MdcGeoLayer.h:157
double Offset(void) const
Definition: MdcGeoLayer.h:166
double nomOffset(void) const
Definition: MdcGeoLayer.h:168