StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
St_tpcDimensionsC.h
1 #ifndef St_tpcDimensionsC_h
2 #define St_tpcDimensionsC_h
3 
4 #include "TChair.h"
5 #include "tables/St_tpcDimensions_Table.h"
6 #include "St_tpcPadConfigC.h"
7 #include "St_tpcEffectiveGeomC.h"
8 #include "St_tpcWirePlanesC.h"
9 class St_tpcDimensionsC : public TChair {
10  public:
11  static St_tpcDimensionsC* instance();
12  tpcDimensions_st *Struct(Int_t i = 0) {return ((St_tpcDimensions*) Table())->GetTable()+i;}
13  UInt_t getNumRows() {return GetNRows();}
14  Int_t numberOfSectors(Int_t i = 0) {return Struct(i)->numberOfSectors;}
15  Double_t tpcInnerRadius(Int_t i = 0) {return Struct(i)->tpcInnerRadius;}
16  Double_t tpcOuterRadius(Int_t i = 0) {return Struct(i)->tpcOuterRadius;}
17  Double_t tpcTotalLength(Int_t i = 0) {return Struct(i)->tpcTotalLength;}
18  Double_t wheelInnerRadius(Int_t i = 0) {return Struct(i)->wheelInnerRadius;}
19  Double_t wheelOuterRadius(Int_t i = 0) {return Struct(i)->wheelOuterRadius;}
20  Double_t wheelThickness(Int_t i = 0) {return Struct(i)->wheelThickness;}
21  Double_t senseGasOuterRadius(Int_t i = 0){return Struct(i)->senseGasOuterRadius;}
22  Double_t tpeaThickness(Int_t i = 0) {return Struct(i)->tpeaThickness;}
23  Double_t cathodeInnerRadius(Int_t i = 0) {return Struct(i)->cathodeInnerRadius;}
24  Double_t cathodeOuterRadius(Int_t i = 0) {return Struct(i)->cathodeOuterRadius;}
25  Double_t cathodeThickness(Int_t i = 0) {return Struct(i)->cathodeThickness;}
26  Double_t outerCuThickness(Int_t i = 0) {return Struct(i)->outerCuThickness;}
27  Double_t outerKaptonThickness(Int_t i =0){return Struct(i)->outerKaptonThickness;}
28  Double_t outerNomexThickness(Int_t i = 0){return Struct(i)->outerNomexThickness;}
29  Double_t outerGlueThickness(Int_t i = 0) {return Struct(i)->outerGlueThickness;}
30  Double_t outerInsGasThickness(Int_t i =0){return Struct(i)->outerInsGasThickness;}
31  Double_t outerAlThickness(Int_t i = 0) {return Struct(i)->outerAlThickness;}
32  Double_t outerAlHoneycombThickness(Int_t i=0) {return Struct(i)->outerAlHoneycombThickness;}
33  Double_t innerGlueThickness(Int_t i = 0) {return Struct(i)->innerGlueThickness;}
34  Double_t innerNomexThickness(Int_t i = 0){return Struct(i)->innerNomexThickness;}
35  Double_t innerKaptonThickness(Int_t i =0){return Struct(i)->innerKaptonThickness;}
36  Double_t innerAlThickness(Int_t i = 0) {return Struct(i)->innerAlThickness;}
37  Double_t innerGapWidI(Int_t i = 0) {return Struct(i)->innerGapWidI;}
38  Double_t innerGapWidO(Int_t i = 0) {return Struct(i)->innerGapWidO;}
39  Double_t innerGapHeit(Int_t i = 0) {return Struct(i)->innerGapHeit;}
40  Double_t innerGapRad(Int_t i = 0) {return Struct(i)->innerGapRad;}
41  Double_t innerInWidth(Int_t i = 0) {return Struct(i)->innerInWidth;}
42  Double_t innerOutWidth(Int_t i = 0) {return Struct(i)->innerOutWidth;}
43  Double_t innerHeight(Int_t i = 0) {return Struct(i)->innerHeight;}
44  Double_t innerPPDepth(Int_t i = 0) {return Struct(i)->innerPPDepth;}
45  Double_t innerAlDepth(Int_t i = 0) {return Struct(i)->innerAlDepth;}
46  Double_t innerMWCDepth(Int_t i = 0) {return Struct(i)->innerMWCDepth;}
47  Double_t innerBoundary(Int_t i = 0) {return Struct(i)->innerBoundary;}
48  Double_t innerRCenter(Int_t i = 0) {return Struct(i)->innerRCenter;}
49  Double_t innerMWCInn(Int_t i = 0) {return Struct(i)->innerMWCInn;}
50  Double_t innerMWCOut(Int_t i = 0) {return Struct(i)->innerMWCOut;}
51  Double_t innerMVCHei(Int_t i = 0) {return Struct(i)->innerMVCHei;}
52  Int_t innerAirGaps(Int_t i = 0) {return Struct(i)->innerAirGaps;}
53  Int_t innerExtraAl(Int_t i = 0) {return Struct(i)->innerExtraAl;}
54  Double_t* innerZGaps(Int_t i = 0) {return Struct(i)->innerZGaps;}
55  Double_t* innerZGapsSize(Int_t i = 0) {return Struct(i)->innerZGapsSize;}
56  Double_t* innerXExtraAl(Int_t i = 0) {return Struct(i)->innerXExtraAl;}
57  Double_t* innerZExtraAl(Int_t i = 0) {return Struct(i)->innerZExtraAl;}
58  Double_t* innerDXExtraAl(Int_t i = 0) {return Struct(i)->innerDXExtraAl;}
59  Double_t* innerDZExtraAl(Int_t i = 0) {return Struct(i)->innerDZExtraAl;}
60  Double_t outerGapWidI(Int_t i = 0) {return Struct(i)->outerGapWidI;}
61  Double_t outerGapWidO(Int_t i = 0) {return Struct(i)->outerGapWidO;}
62  Double_t outerGapHeit(Int_t i = 0) {return Struct(i)->outerGapHeit;}
63  Double_t outerGapRad(Int_t i = 0) {return Struct(i)->outerGapRad;}
64  Double_t outerInWidth(Int_t i = 0) {return Struct(i)->outerInWidth;}
65  Double_t outerOutWidth(Int_t i = 0) {return Struct(i)->outerOutWidth;}
66  Double_t outerHeight(Int_t i = 0) {return Struct(i)->outerHeight;}
67  Double_t outerPPDepth(Int_t i = 0) {return Struct(i)->outerPPDepth;}
68  Double_t outerAlDepth(Int_t i = 0) {return Struct(i)->outerAlDepth;}
69  Double_t outerMWCDepth(Int_t i = 0) {return Struct(i)->outerMWCDepth;}
70  Double_t outerBoundary(Int_t i = 0) {return Struct(i)->outerBoundary;}
71  Double_t outerRCenter(Int_t i = 0) {return Struct(i)->outerRCenter;}
72  Double_t outerMWCInn(Int_t i = 0) {return Struct(i)->outerMWCInn;}
73  Double_t outerMWCOut(Int_t i = 0) {return Struct(i)->outerMWCOut;}
74  Double_t outerMVCHei(Int_t i = 0) {return Struct(i)->outerMVCHei;}
75  Int_t outerAirGaps(Int_t i = 0) {return Struct(i)->outerAirGaps;}
76  Int_t outerExtraAl(Int_t i = 0) {return Struct(i)->outerExtraAl;}
77  Double_t* outerZGaps(Int_t i = 0) {return Struct(i)->outerZGaps;}
78  Double_t* outerZGapsSize(Int_t i = 0) {return Struct(i)->outerZGapsSize;}
79  Double_t* outerXExtraAl(Int_t i = 0) {return Struct(i)->outerXExtraAl;}
80  Double_t* outerZExtraAl(Int_t i = 0) {return Struct(i)->outerZExtraAl;}
81  Double_t* outerDXExtraAl(Int_t i = 0) {return Struct(i)->outerDXExtraAl;}
82  Double_t* outerDZExtraAl(Int_t i = 0) {return Struct(i)->outerDZExtraAl;}
83  Double_t gatingGridZ(Int_t sector=20) {
84  return St_tpcPadConfigC::instance()->outerSectorPadPlaneZ(sector)
85  - St_tpcWirePlanesC::instance()->outerSectorGatingGridPadPlaneSeparation();}
86  Double_t zInnerOffset() {return St_tpcEffectiveGeomC::instance()->z_inner_offset();}
87  Double_t zOuterOffset() {return St_tpcEffectiveGeomC::instance()->z_outer_offset();}
88  Double_t zInnerOffset_West() {return St_tpcEffectiveGeomC::instance()->z_inner_offset_West();}
89  Double_t zOuterOffset_West() {return St_tpcEffectiveGeomC::instance()->z_outer_offset_West();}
90  //TPC field cage parameters:
91  Double_t ifcRadius() {return tpcInnerRadius();}
92  Double_t ofcRadius() {return tpcOuterRadius();}
93 
94  protected:
95  St_tpcDimensionsC(St_tpcDimensions *table=0) : TChair(table) {}
96  virtual ~St_tpcDimensionsC() {fgInstance = 0;}
97  private:
98  static St_tpcDimensionsC* fgInstance;
99  ClassDefChair(St_tpcDimensions, tpcDimensions_st )
100  ClassDef(St_tpcDimensionsC,1) //C++ TChair for tpcDimensions table class
101 };
102 #endif
Definition: TChair.h:27