StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StTpcSurveyC.h
1 #ifndef StTpcSurveyC_h
2 #define StTpcSurveyC_h
3 
4 #include "St_SurveyC.h"
5 #include "StEnumerations.h"
6 class StTpcInnerSectorPosition : public St_SurveyC {// Inner part of sector to Super Sector
7  public:
8  static StTpcInnerSectorPosition* instance();
9  StTpcInnerSectorPosition(St_Survey *table=0) : St_SurveyC(table) {}
10  virtual ~StTpcInnerSectorPosition() {fgInstance = 0;}
11  private:
12  static StTpcInnerSectorPosition* fgInstance;
13  ClassDef(StTpcInnerSectorPosition,1) //C++ TChair for TpcInnerSectorPosition
14 };
15 class StTpcOuterSectorPosition : public St_SurveyC {// Outer part of sector to Super Sector
16  public:
17  static StTpcOuterSectorPosition* instance();
18  StTpcOuterSectorPosition(St_Survey *table=0) : St_SurveyC(table) {}
19  virtual ~StTpcOuterSectorPosition() {fgInstance = 0;}
20  private:
21  static StTpcOuterSectorPosition* fgInstance;
22  ClassDef(StTpcOuterSectorPosition,1) //C++ TChair for TpcOuterSectorPosition
23 };
24 
25 class StTpcSuperSectorPosition : public St_SurveyC {// Extra rotation for whole Super Sector to half Tpc
26  public:
27  static StTpcSuperSectorPosition* instance();
28  StTpcSuperSectorPosition(St_Survey *table=0) : St_SurveyC(table) {}
29  virtual ~StTpcSuperSectorPosition() {fgInstance = 0;}
30  private:
31  static StTpcSuperSectorPosition* fgInstance;
32  ClassDef(StTpcSuperSectorPosition,1) //C++ TChair for TpcSuperSectorPosition
33 };
34 
35 class StTpcHalfPosition : public St_SurveyC {// Extra rotation for half of Tpc to Tpc
36  public:
37  static StTpcHalfPosition* instance();
38  StTpcHalfPosition(St_Survey *table=0) : St_SurveyC(table) {}
39  virtual ~StTpcHalfPosition() {fgInstance = 0;}
40  const TGeoHMatrix &GetEastMatrix() {return GetMatrix(east);}
41  const TGeoHMatrix &GetWestMatrix() {return GetMatrix(west);}
42  const TGeoHMatrix &GetEastMatrixR() {return GetMatrixR(east);}
43  const TGeoHMatrix &GetWestMatrixR() {return GetMatrixR(west);}
44  static void Normalize(TGeoHMatrix &R) {}
45  private:
46  static StTpcHalfPosition* fgInstance;
47  ClassDef(StTpcHalfPosition,1) //C++ TChair for TpcHalfPosition
48 };
49 
50 class StTpcPosition : public St_SurveyC {// Global position of TPC in Magnet
51  public:
52  static StTpcPosition* instance();
53  StTpcPosition(St_Survey *table=0) : St_SurveyC(table) {}
54  virtual ~StTpcPosition() {fgInstance = 0;}
55  const TGeoHMatrix &GetMatrix() {return St_SurveyC::GetMatrix(0);}
56  private:
57  static StTpcPosition* fgInstance;
58  ClassDef(StTpcPosition,1) //C++ TChair for TpcPosition
59 };
60 #endif