1 #ifndef PNDSTTGEOMETRYMAP_H 2 #define PNDSTTGEOMETRYMAP_H 45 int GetRow(
int strawindex)
const {
return fLayerOfStraw.at(strawindex); }
46 int GetSector(
int strawindex)
const {
return fSectorOfStraw.at(strawindex); }
47 const vector<int> &
GetStrawRow(
int sector,
int row)
const {
return (fStrawIndex.find(sector))->second.at(row); }
48 const vector<vector<int>> &
GetStrawSector(
int sector)
const {
return (fStrawIndex.find(sector))->second; }
53 bool IsAxialStraw(
int strawindex)
const {
return fAxialStraw.at(strawindex); }
54 bool IsSkewedStraw(
int strawindex)
const {
return !(fAxialStraw.at(strawindex)); }
78 Int_t fGeoType, fVerbose;
80 void GenerateAngles();
81 map<int, vector<vector<int>>> fStrawIndex;
82 map<int, TArrayI> fStrawNeighbors;
83 vector<int> fSectorOfStraw;
84 vector<int> fLayerOfStraw;
85 vector<bool> fAxialStraw;
86 vector<double> fSectorStart;
87 vector<double> fSectorEnd;
88 bool fStrawMapInitialized;
91 Int_t fNLayers, fNSectors, fNTubes, fNTubes_inner_parallel, fNTubes_outer_parallel, fNTubes_fillup_parallel, fNTubes_skewed, fNLayers_inner_parallel, fNLayers_skew,
92 fNLayers_outer_parallel, fNLayers_fillup_parallel;
93 Int_t **fStartTube, **fEndTube, **fShift, **fShiftSkew;
95 TClonesArray *fTubeArray;
PndSttGeometryMap & operator=(const PndSttGeometryMap &)=delete
const vector< vector< int > > & GetStrawSector(int sector) const
int IsSectorBorderStraw(int strawindex) const
bool IsSkewedRow(int rowindex) const
void GenerateStrawMapTubeIDGeoType1()
void SetGeneralParametersGeoType1()
void SetGeneralParameters()
int GetRow(int strawindex) const
void FillStrawNeighborsMap()
int GetSector(int strawindex) const
void GenerateStrawMap(Int_t map)
bool IsAxialRow(int rowindex) const
void GenerateStrawMapAngleGeoType1()
Double_t CalculateStrawPoca(PndSttHit *hit1, PndSttHit *hit2, TVector3 &poca)
Bool_t FillGeometryParameters()
bool IsSkewedStraw(int strawindex) const
bool IsAxialStraw(int strawindex) const
bool InStraightLine(int tube1, int tube2, int tube3) const
void GenerateStrawMapGeoType1(Int_t map)
double GetAngleBetweenTubes(int tubeID1, int tubeID2) const
bool IsEdgeStraw(int strawindex) const
const vector< int > & GetStrawRow(int sector, int row) const
Bool_t FillGeometryParametersGeoType1()
TArrayI FindNeighborings(PndSttTube *tube)
TArrayI GetNeighboringsByMap(int tubeId)