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