13 #ifndef PNDSTTGEOMETRYMAP_H 14 #define PNDSTTGEOMETRYMAP_H 57 int GetRow(
int strawindex)
const {
return fLayerOfStraw.at(strawindex); }
58 int GetSector(
int strawindex)
const {
return fSectorOfStraw.at(strawindex); }
59 const vector<int> &
GetStrawRow(
int sector,
int row)
const {
return (fStrawIndex.find(sector))->second.at(row); }
60 const vector<vector<int>> &
GetStrawSector(
int sector)
const {
return (fStrawIndex.find(sector))->second; }
65 bool IsAxialStraw(
int strawindex)
const {
return fAxialStraw.at(strawindex); }
66 bool IsSkewedStraw(
int strawindex)
const {
return !(fAxialStraw.at(strawindex)); }
90 Int_t fGeoType, fVerbose;
92 void GenerateAngles();
93 map<int, vector<vector<int>>> fStrawIndex;
94 map<int, TArrayI> fStrawNeighbors;
95 vector<int> fSectorOfStraw;
96 vector<int> fLayerOfStraw;
97 vector<bool> fAxialStraw;
98 vector<double> fSectorStart;
99 vector<double> fSectorEnd;
100 bool fStrawMapInitialized;
103 Int_t fNLayers, fNSectors, fNTubes, fNTubes_inner_parallel, fNTubes_outer_parallel, fNTubes_fillup_parallel, fNTubes_skewed, fNLayers_inner_parallel, fNLayers_skew,
104 fNLayers_outer_parallel, fNLayers_fillup_parallel;
105 Int_t **fStartTube, **fEndTube, **fShift, **fShiftSkew;
107 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)