ATLAS Offline Software
Public Member Functions | Protected Attributes | List of all members
AFP_GeometryTool Class Reference

#include <AFP_GeometryTool.h>

Inheritance diagram for AFP_GeometryTool:
Collaboration diagram for AFP_GeometryTool:

Public Member Functions

 AFP_GeometryTool (const std::string &type, const std::string &name, const IInterface *parent)
 
virtual ~AFP_GeometryTool () override
 
virtual StatusCode initialize () override
 
virtual StatusCode finalize () override
 
virtual void SetCfgParams (AFP_CONFIGURATION *pCfgParams) override
 
void getCfgParams (AFP_CONFIGURATION *pCfgParams) const
 
HepGeom::Transform3D getStationTransform (const char *pszStationName) const
 
HepGeom::Transform3D getStationElementTransform (const char *pszStationName, eStationElement eElement, const int nPlateID=-1) const
 
int getSIDPlatesCnt (const eAFPStation eStation) const
 
HepGeom::Transform3D getSIDTransform (const eSIDTransformType eType, const char *pszStationName, const int nPlateID) const
 
StatusCode getPointInSIDSensorLocalCS (const int nStationID, const int nPlateID, const HepGeom::Point3D< double > &GlobalPoint, HepGeom::Point3D< double > &LocalPoint) const
 
StatusCode getPointInSIDSensorGlobalCS (const int nStationID, const int nPlateID, const HepGeom::Point3D< double > &LocalPoint, HepGeom::Point3D< double > &GlobalPoint) const
 
eAFPStation parseStationName (const char *pszStationName) const
 
void setupLBarsDims (const eAFPStation eStation)
 
void getPixelLocalPosition (const eAFPStation eStation, const int nPixelID, double *pfX1Pos, double *pfX2Pos) const
 
int getPixelRow (const int nPixelID) const
 
int getPixelColumn (const int nPixelID) const
 

Protected Attributes

AFP_CONFIGURATION m_CfgParams
 
std::map< eAFPStation, std::map< int, HepGeom::Transform3D > > m_MapSIDTransToLocal
 
std::map< eAFPStation, std::map< int, HepGeom::Transform3D > > m_MapSIDTransToGlobal
 

Detailed Description

Definition at line 23 of file AFP_GeometryTool.h.

Constructor & Destructor Documentation

◆ AFP_GeometryTool()

AFP_GeometryTool::AFP_GeometryTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Definition at line 7 of file AFP_GeometryTool.cxx.

7  :
8  base_class(type, name, parent)
9 {
10 }

◆ ~AFP_GeometryTool()

AFP_GeometryTool::~AFP_GeometryTool ( )
overridevirtual

Definition at line 12 of file AFP_GeometryTool.cxx.

13 {
14 }

Member Function Documentation

◆ finalize()

StatusCode AFP_GeometryTool::finalize ( )
overridevirtual

Definition at line 21 of file AFP_GeometryTool.cxx.

22 {
23  return StatusCode::SUCCESS;
24 }

◆ getCfgParams()

void AFP_Geometry::getCfgParams ( AFP_CONFIGURATION pCfgParams) const
inlineinherited

Definition at line 34 of file AFP_Geometry.h.

34 { *pCfgParams=m_CfgParams; }

◆ getPixelColumn()

int AFP_Geometry::getPixelColumn ( const int  nPixelID) const
inlineinherited

Definition at line 53 of file AFP_Geometry.h.

53 { return nPixelID%10; }

◆ getPixelLocalPosition()

void AFP_Geometry::getPixelLocalPosition ( const eAFPStation  eStation,
const int  nPixelID,
double *  pfX1Pos,
double *  pfX2Pos 
) const
inherited

Definition at line 264 of file AFP_Geometry.cxx.

265 {
266  int i,j;
267  AFP_TDCONFIGURATION TofCfg=m_CfgParams.tdcfg.at(eStation);
268 
269  i=getPixelRow(nPixelID)-1;
270  j=getPixelColumn(nPixelID)-1;
271 
272  if(pfX1Pos) *pfX1Pos = -i * m_CfgParams.tdcfg.at(eStation).fPixelX1Dim;
273  if(pfX2Pos) *pfX2Pos = j * m_CfgParams.tdcfg.at(eStation).fPixelX2Dim;
274 }

◆ getPixelRow()

int AFP_Geometry::getPixelRow ( const int  nPixelID) const
inlineinherited

Definition at line 52 of file AFP_Geometry.h.

52 { return (nPixelID-(nPixelID%10))/10; }

◆ getPointInSIDSensorGlobalCS()

StatusCode AFP_Geometry::getPointInSIDSensorGlobalCS ( const int  nStationID,
const int  nPlateID,
const HepGeom::Point3D< double > &  LocalPoint,
HepGeom::Point3D< double > &  GlobalPoint 
) const
inherited

Definition at line 245 of file AFP_Geometry.cxx.

246 {
247  StatusCode Status=StatusCode::FAILURE;
248  GlobalPoint=HepGeom::Point3D<double>();
249  eAFPStation eStation=(eAFPStation)nStationID;
250 
251  if(nStationID>=0 && nStationID<=3){
252  if(nPlateID>=0 && nPlateID<getSIDPlatesCnt(eStation)){
253  GlobalPoint=m_MapSIDTransToGlobal.at(eStation).at(nPlateID)*static_cast<HepGeom::Point3D<double> >(LocalPoint+HepGeom::Point3D<double>(0.5*AFP_CONSTANTS::SiT_Pixel_length_totx,0.5*AFP_CONSTANTS::SiT_Pixel_length_toty,0.5*AFP_CONSTANTS::SiT_Pixel_thickness));
254  Status=StatusCode::SUCCESS;
255  }
256  }
257 
258  return Status;
259 }

◆ getPointInSIDSensorLocalCS()

StatusCode AFP_Geometry::getPointInSIDSensorLocalCS ( const int  nStationID,
const int  nPlateID,
const HepGeom::Point3D< double > &  GlobalPoint,
HepGeom::Point3D< double > &  LocalPoint 
) const
inherited

Definition at line 227 of file AFP_Geometry.cxx.

228 {
229  StatusCode Status=StatusCode::FAILURE;
230  LocalPoint=HepGeom::Point3D<double>();
231  eAFPStation eStation=(eAFPStation)nStationID;
232 
233  AFP_TDCONFIGURATION tdcfg=m_CfgParams.tdcfg.at(eStation);
234 
235  if(nStationID>=0 && nStationID<=3){
236  if(nPlateID>=0 && nPlateID<getSIDPlatesCnt(eStation)){
237  LocalPoint=m_MapSIDTransToLocal.at(eStation).at(nPlateID)*GlobalPoint-HepGeom::Point3D<double>(0.5*AFP_CONSTANTS::SiT_Pixel_length_totx,0.5*AFP_CONSTANTS::SiT_Pixel_length_toty,0.5*AFP_CONSTANTS::SiT_Pixel_thickness);
238  Status=StatusCode::SUCCESS;
239  }
240  }
241 
242  return Status;
243 }

◆ getSIDPlatesCnt()

int AFP_Geometry::getSIDPlatesCnt ( const eAFPStation  eStation) const
inlineinherited

Definition at line 40 of file AFP_Geometry.h.

40  {
41  std::map<eAFPStation, AFP_SIDCONFIGURATION> sidcfg(m_CfgParams.sidcfg.begin(),m_CfgParams.sidcfg.end());
42  return sidcfg[eStation].fLayerCount;
43  }

◆ getSIDTransform()

HepGeom::Transform3D AFP_Geometry::getSIDTransform ( const eSIDTransformType  eType,
const char *  pszStationName,
const int  nPlateID 
) const
inherited

Definition at line 136 of file AFP_Geometry.cxx.

137 {
139 
140  std::string Station=std::string(pszStationName);
141  eAFPStation eStation=parseStationName(pszStationName);
142  AFP_SIDCONFIGURATION sidcfg=m_CfgParams.sidcfg.at(eStation);
143  double falpha = sidcfg.fSlope;
144 
145  double fzm=0.0;
146 
147  if(eType==ESTT_VACUUMSENSOR)
148  {
150  {
151  double fxm=-(sidcfg.vecChipXPos[nPlateID]+0.5*sidcfg.vecChipXLength[nPlateID])*std::cos(falpha);
152  double fZCorrOffset=(DETXSIDE==+1 || falpha==0)? -0:4*AFP_CONSTANTS::SiT_CorrZOffset;
153  HepGeom::Transform3D TransInMotherVolume=getStationElementTransform(pszStationName,ESE_SID,nPlateID);
154  HepGeom::Transform3D NominalPosInPocket=HepGeom::Translate3D(0.0*CLHEP::mm,0.0*CLHEP::mm, (fzm-fZCorrOffset));
155 
157  ReqTransform=TransInMotherVolume*NominalPosInPocket*HepGeom::Translate3D(fxm, 0.0*CLHEP::mm, nPlateID*sidcfg.fLayerSpacing/std::cos(falpha))*HepGeom::RotateY3D(falpha)*ReqTransform;
158  }
159  else
160  {
162  {
163  if(eStation==EAS_AFP00) ReqTransform=HepGeom::TranslateZ3D(-AFP_CONSTANTS::Stat_GlobalVacuumSensorZOffset);
164  else if(eStation==EAS_AFP01) ReqTransform=HepGeom::TranslateZ3D(-AFP_CONSTANTS::Stat_GlobalVacuumSensorZOffset);
165  else if(eStation==EAS_AFP02) ReqTransform=HepGeom::TranslateZ3D(-AFP_CONSTANTS::Stat_GlobalVacuumSensorZOffset);
166  else if(eStation==EAS_AFP03) ReqTransform=HepGeom::TranslateZ3D(-AFP_CONSTANTS::Stat_GlobalVacuumSensorZOffset);
167  }
168  }
169 
170  return ReqTransform;
171  }
172 
173  double fxm=-(sidcfg.vecChipXPos[nPlateID]+0.5*sidcfg.vecChipXLength[nPlateID])*std::cos(falpha);
174  double fZCorrOffset=(DETXSIDE==+1 || falpha==0)? -0:4*AFP_CONSTANTS::SiT_CorrZOffset;
175  HepGeom::Transform3D TransInMotherVolume=getStationElementTransform(pszStationName,ESE_SID,nPlateID);
176  HepGeom::Transform3D NominalPosInPocket=HepGeom::Translate3D(0.0*CLHEP::mm,0.0*CLHEP::mm, (fzm-fZCorrOffset));
177 
178  HepGeom::Transform3D TransMotherInWorld=getStationTransform(pszStationName);
179 
180  //staggering of sensor shift in its plane - correction to cosinus needed fo x-staggering to transform to staggering in LHC CS
181  HepGeom::Transform3D TransStaggering=HepGeom::Translate3D(sidcfg.vecXStaggering[nPlateID]*std::cos(falpha),sidcfg.vecYStaggering[nPlateID], 0.0*CLHEP::mm);
182  HepGeom::Transform3D TotTransform=TransInMotherVolume*TransStaggering*NominalPosInPocket;
183 
184  HepGeom::Transform3D PlateTotTrans=TotTransform*HepGeom::Translate3D(fxm,0.0*CLHEP::mm, nPlateID*sidcfg.fLayerSpacing/std::cos(falpha))*HepGeom::RotateY3D(falpha);
185  HepGeom::Transform3D TransFEI4=PlateTotTrans*HepGeom::Translate3D(sidcfg.vecChipXPos[nPlateID], sidcfg.vecChipYPos[nPlateID], 0.5*AFP_CONSTANTS::SiT_Plate_Main_thickness+0.5*AFP_CONSTANTS::SiT_Chip_thickness)*HepGeom::RotateZ3D(sidcfg.vecChipRotAngle[nPlateID]);
186  HepGeom::Transform3D TransSID=TotTransform*HepGeom::Translate3D(fxm,0.0*CLHEP::mm, nPlateID*sidcfg.fLayerSpacing/std::cos(falpha)) * HepGeom::Translate3D(sidcfg.vecChipXPos[nPlateID]+sidcfg.vecSensorXPos[nPlateID], sidcfg.vecChipYPos[nPlateID]+sidcfg.vecSensorYPos[nPlateID], (0.5*AFP_CONSTANTS::SiT_Plate_Main_thickness+AFP_CONSTANTS::SiT_Chip_thickness+0.5*AFP_CONSTANTS::SiT_Pixel_thickness))*HepGeom::RotateY3D(falpha) * HepGeom::RotateZ3D(sidcfg.vecChipRotAngle[nPlateID]);
187  HepGeom::Transform3D TotTransSIDInWorld=TransMotherInWorld*TransSID;
188 
189  switch(eType)
190  {
191  case ESTT_PLATE:
192  ReqTransform=PlateTotTrans;
193  break;
194  case ESTT_SENSOR:
195  ReqTransform=TransSID;
196  break;
197  case ESTT_FEI4CHIP: //CHANGE
198  ReqTransform=TransFEI4;
199  break;
200  case ESTT_SENSORLOCAL:
201  ReqTransform=TotTransSIDInWorld.inverse();
202  break;
203  case ESTT_SENSORGLOBAL:
204  ReqTransform=TotTransSIDInWorld;
205  break;
206 
207  default:
208  break;
209  }
210 
211  return ReqTransform;
212 }

◆ getStationElementTransform()

HepGeom::Transform3D AFP_Geometry::getStationElementTransform ( const char *  pszStationName,
eStationElement  eElement,
const int  nPlateID = -1 
) const
inherited

Definition at line 81 of file AFP_Geometry.cxx.

82 {
83  HepGeom::Transform3D ReqTransform;
84  eAFPStation eStation=parseStationName(pszStationName);
85 
86  AFP_TDCONFIGURATION tdcfg=m_CfgParams.tdcfg.at(eStation);
87  AFP_SIDCONFIGURATION sidcfg=m_CfgParams.sidcfg.at(eStation);
88 
89  double xComponent = -m_CfgParams.vecRPotFloorDistance[eStation];
90  double yComponent = m_CfgParams.vecRPotYPos[eStation];
91 
92  double xStag = 0.0;
93  if(eElement==ESE_SID && nPlateID!=AFP_CONSTANTS::Stat_GlobalVacuumSensorID)
94  xStag = (nPlateID>-1) ? -sidcfg.vecXStaggering[nPlateID] : 0.0;
95 
96  switch(eStation)
97  {
98  case EAS_AFP00:
99  if(eElement==ESE_RPOT)
100  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0);
101  else if(eElement==ESE_TOF)
102  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0)*HepGeom::Translate3D(-tdcfg.fXFloorDistance,tdcfg.fYPosInRPot,tdcfg.fZPosInRPot-sidcfg.fZDistanceInRPot);
103  else if(eElement==ESE_SID)
104  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0)*HepGeom::Translate3D( xStag,0.0,-sidcfg.fZDistanceInRPot);
105  else {};
106  break;
107  case EAS_AFP01:
108  if(eElement==ESE_RPOT)
109  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0);
110  else if(eElement==ESE_SID)
111  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0)*HepGeom::TranslateX3D( xStag);
112  else {};
113  break;
114  case EAS_AFP02:
115  if(eElement==ESE_RPOT)
116  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0);
117  else if(eElement==ESE_SID)
118  ReqTransform=HepGeom::Translate3D(xComponent, yComponent ,0.0)*HepGeom::TranslateX3D( xStag);
119  else {};
120  break;
121  case EAS_AFP03:
122  if(eElement==ESE_RPOT)
123  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0);
124  else if(eElement==ESE_TOF)
125  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0)*HepGeom::Translate3D(-tdcfg.fXFloorDistance,tdcfg.fYPosInRPot,tdcfg.fZPosInRPot-sidcfg.fZDistanceInRPot);
126  else if(eElement==ESE_SID)
127  ReqTransform=HepGeom::Translate3D(xComponent, yComponent, 0.0)*HepGeom::Translate3D( xStag,0.0,-sidcfg.fZDistanceInRPot);
128  break;
129  default:
130  break;
131  }
132 
133  return ReqTransform;
134 }

◆ getStationTransform()

HepGeom::Transform3D AFP_Geometry::getStationTransform ( const char *  pszStationName) const
inherited

Definition at line 55 of file AFP_Geometry.cxx.

56 {
57  HepGeom::Transform3D ReqTransform;
58  eAFPStation eStation=parseStationName(pszStationName);
59 
60  switch(eStation)
61  {
62  case EAS_AFP00:
63  ReqTransform=HepGeom::Translate3D(LHCXOFFSET, 0.0*CLHEP::mm, m_CfgParams.vecStatNominalZPos[0]);
64  break;
65  case EAS_AFP01:
66  ReqTransform=HepGeom::Translate3D(LHCXOFFSET, 0.0*CLHEP::mm, m_CfgParams.vecStatNominalZPos[1]);
67  break;
68  case EAS_AFP02:
69  ReqTransform=HepGeom::Translate3D(LHCXOFFSET, 0.0*CLHEP::mm, m_CfgParams.vecStatNominalZPos[2]) * HepGeom::RotateX3D(180*CLHEP::deg);
70  break;
71  case EAS_AFP03:
72  ReqTransform=HepGeom::Translate3D(LHCXOFFSET, 0.0*CLHEP::mm, m_CfgParams.vecStatNominalZPos[3]) * HepGeom::RotateX3D(180*CLHEP::deg);
73  break;
74  default:
75  break;
76  }
77 
78  return ReqTransform;
79 }

◆ initialize()

StatusCode AFP_GeometryTool::initialize ( )
overridevirtual

Definition at line 16 of file AFP_GeometryTool.cxx.

17 {
18  return StatusCode::SUCCESS;
19 }

◆ parseStationName()

eAFPStation AFP_Geometry::parseStationName ( const char *  pszStationName) const
inherited

Definition at line 214 of file AFP_Geometry.cxx.

215 {
216  eAFPStation eStation=EAS_UNKNOWN;
217 
218  if(!strcmp(pszStationName,"AFP00")) eStation=EAS_AFP00;
219  else if(!strcmp(pszStationName,"AFP01")) eStation=EAS_AFP01;
220  else if(!strcmp(pszStationName,"AFP02")) eStation=EAS_AFP02;
221  else if(!strcmp(pszStationName,"AFP03")) eStation=EAS_AFP03;
222  else eStation=EAS_UNKNOWN;
223 
224  return eStation;
225 }

◆ SetCfgParams()

void AFP_GeometryTool::SetCfgParams ( AFP_CONFIGURATION pCfgParams)
overridevirtual

Definition at line 26 of file AFP_GeometryTool.cxx.

27 {
28  // coppy of constructor of AFP_Geometry
29  m_CfgParams=*pCfgParams;
30 
33 
34  for(int nStationID=0; nStationID<=3; ++nStationID)
35  {
36  eAFPStation eStation=(eAFPStation)nStationID;
37  for(int nPlateID=0; nPlateID<getSIDPlatesCnt(eStation); ++nPlateID)
38  {
39  if(!(m_MapSIDTransToGlobal.find(eStation)!=m_MapSIDTransToGlobal.end() && m_MapSIDTransToGlobal[eStation].find(nPlateID)!=m_MapSIDTransToGlobal[eStation].end()))
40  {
41  char szStationName[8];
42  sprintf(szStationName,"AFP%02i",(int)eStation);
43 HepGeom::Transform3D Aux=getSIDTransform(ESTT_SENSORGLOBAL,szStationName,nPlateID);
44  m_MapSIDTransToGlobal[eStation][nPlateID]=Aux;
45  }
46 
47  if(!(m_MapSIDTransToLocal.find(eStation)!=m_MapSIDTransToLocal.end() && m_MapSIDTransToLocal[eStation].find(nPlateID)!=m_MapSIDTransToLocal[eStation].end()))
48  {
49  char szStationName[8];
50  sprintf(szStationName,"AFP%02i",(int)eStation);
51 HepGeom::Transform3D Aux=getSIDTransform(ESTT_SENSORLOCAL,szStationName,nPlateID);
52  m_MapSIDTransToLocal[eStation][nPlateID]=Aux;
53  }
54  }
55  }
56 }

◆ setupLBarsDims()

void AFP_Geometry::setupLBarsDims ( const eAFPStation  eStation)
inherited

Definition at line 276 of file AFP_Geometry.cxx.

277 {
278  int i,j,nTrainOfBar11,nRefTrainID,nTrainID,nTrainCnt;
279  AFPTOF_LBARDIMENSIONS BarDims;
280  double fRadLength11, fLGuideLength11, fRadLength, fLGuideLength;
281 
282  AFP_TDCONFIGURATION tdcfg=m_CfgParams.tdcfg.at(eStation);
283  AFPTOF_LBARREFDIMENSIONS RefBarDims=tdcfg.RefBarDims;
284 
285  nTrainCnt=nTrainOfBar11=tdcfg.nX1PixCnt;
286 
288 
289  //calculate dimensions for bar (1,1), move from (refx1,refx2)
290  nRefTrainID = nTrainCnt-(RefBarDims.nBarX1ID-1); //reference train
291  fRadLength11 = (RefBarDims.fRadLength+tdcfg.mapTrainInfo.at(nRefTrainID).fTaperOffset)+(1-RefBarDims.nBarX1ID)*tdcfg.fPixelX1Dim; // move to (refx1,1)
292  fRadLength11 += (tdcfg.mapTrainInfo.at(nRefTrainID).fPerpShiftInPixel-tdcfg.mapTrainInfo.at(nTrainOfBar11).fPerpShiftInPixel)+0.5*(tdcfg.mapTrainInfo.at(nTrainOfBar11).fLGuideWidth-tdcfg.mapTrainInfo.at(nRefTrainID).fLGuideWidth);
293  fRadLength11 -= ((1-RefBarDims.nBarX2ID)*tdcfg.fPixelX2Dim)/std::tan(tdcfg.fAlpha); //move to (1,1)
294  for(fLGuideLength11=RefBarDims.fLGuideLength,i=RefBarDims.nBarX1ID-1;i>=1;i--){
295  nTrainID = nTrainCnt-(i-1);
296  fLGuideLength11 -= AFP_CONSTANTS::ToF_LGuideTrainOffset+(tdcfg.mapTrainInfo.at(nTrainID).fLGuideWidth-tdcfg.mapTrainInfo.at(nTrainID).fTaperOffset);
297  }
298 
299  //calculate length of light guides
300  std::vector<double> vecLGLengths;
301  vecLGLengths.resize(tdcfg.nX1PixCnt);
302  vecLGLengths[0]=fLGuideLength11;
303  for(i=2;i<=tdcfg.nX1PixCnt;i++){
304  nTrainID=nTrainCnt-(i-1);
305  vecLGLengths[i-1]=vecLGLengths[i-2]+AFP_CONSTANTS::ToF_LGuideTrainOffset+tdcfg.mapTrainInfo.at(nTrainID+1).fLGuideWidth-tdcfg.mapTrainInfo.at(nTrainID+1).fTaperOffset;
306  }
307 
308  tdcfg.mapBarDims.clear();
309  for(i=0;i<tdcfg.nX1PixCnt;i++){
310  nTrainID=tdcfg.nX1PixCnt-i;
311 
312  for(j=0;j<tdcfg.nX2PixCnt;j++){
313  int k = j;
314  if(eStation==EAS_AFP02 || eStation==EAS_AFP03){
315  k = tdcfg.nX2PixCnt-1 - j;
316  }
317 
318  fRadLength=fRadLength11+i*tdcfg.fPixelX1Dim-k*tdcfg.fPixelX2Dim/std::tan(tdcfg.fAlpha);
319  fRadLength+=(tdcfg.mapTrainInfo.at(nTrainOfBar11).fPerpShiftInPixel-tdcfg.mapTrainInfo.at(nTrainID).fPerpShiftInPixel);
320  fRadLength+=0.5*(tdcfg.mapTrainInfo.at(nTrainID).fLGuideWidth-tdcfg.mapTrainInfo.at(nTrainOfBar11).fLGuideWidth);
321  fLGuideLength=vecLGLengths[i];
322 
323  BarDims.nBarX1ID=i+1;
324  BarDims.nBarX2ID=j+1;
325  BarDims.nTrainID=nTrainID;
326  BarDims.fLGuideLength=fLGuideLength;
327  BarDims.fLBarThickness=RefBarDims.fLBarThickness;
328  BarDims.fRadLength=fRadLength-tdcfg.mapTrainInfo.at(BarDims.nTrainID).fTaperOffset;
329  BarDims.fRadYDim=tdcfg.mapTrainInfo.at(nTrainID).fLGuideWidth-tdcfg.mapTrainInfo.at(BarDims.nTrainID).fTaperOffset;
330  BarDims.fLGuideWidth=tdcfg.mapTrainInfo.at(nTrainID).fLGuideWidth;
331 
332  if(j==0) tdcfg.mapTrainInfo.at(nTrainCnt-i).fLength=fLGuideLength+0.5*BarDims.fRadYDim;
333  tdcfg.mapBarDims[10*(i+1)+(k + 1)]=BarDims;
334  }
335  }
336 }

Member Data Documentation

◆ m_CfgParams

AFP_CONFIGURATION AFP_Geometry::m_CfgParams
protectedinherited

Definition at line 23 of file AFP_Geometry.h.

◆ m_MapSIDTransToGlobal

std::map<eAFPStation, std::map<int, HepGeom::Transform3D> > AFP_Geometry::m_MapSIDTransToGlobal
protectedinherited

Definition at line 26 of file AFP_Geometry.h.

◆ m_MapSIDTransToLocal

std::map<eAFPStation, std::map<int, HepGeom::Transform3D> > AFP_Geometry::m_MapSIDTransToLocal
protectedinherited

Definition at line 25 of file AFP_Geometry.h.


The documentation for this class was generated from the following files:
AFP_SIDCONFIGURATION
Definition: AFP_ConfigParams.h:105
AFP_SIDCONFIGURATION::fLayerSpacing
double fLayerSpacing
Definition: AFP_ConfigParams.h:108
EAS_AFP02
@ EAS_AFP02
Definition: AFP_ConfigParams.h:18
AFP_TDCONFIGURATION::nX2PixCnt
int nX2PixCnt
Definition: AFP_ConfigParams.h:85
AFP_Geometry::m_MapSIDTransToLocal
std::map< eAFPStation, std::map< int, HepGeom::Transform3D > > m_MapSIDTransToLocal
Definition: AFP_Geometry.h:25
AFPTOF_LBARREFDIMENSIONS::nBarX1ID
int nBarX1ID
Definition: AFP_ConfigParams.h:52
ESTT_SENSORLOCAL
@ ESTT_SENSORLOCAL
Definition: AFP_ConfigParams.h:17
ESTT_SENSORGLOBAL
@ ESTT_SENSORGLOBAL
Definition: AFP_ConfigParams.h:17
AFP_CONFIGURATION::sidcfg
std::map< eAFPStation, AFP_SIDCONFIGURATION > sidcfg
Definition: AFP_ConfigParams.h:136
AFP_Geometry::getSIDPlatesCnt
int getSIDPlatesCnt(const eAFPStation eStation) const
Definition: AFP_Geometry.h:40
EAS_UNKNOWN
@ EAS_UNKNOWN
Definition: AFP_ConfigParams.h:18
EAS_AFP00
@ EAS_AFP00
Definition: AFP_ConfigParams.h:18
DETXSIDE
#define DETXSIDE
Definition: AFP_constants.h:92
AFPTOF_LBARREFDIMENSIONS::nBarX2ID
int nBarX2ID
Definition: AFP_ConfigParams.h:53
AFP_TDCONFIGURATION
Definition: AFP_ConfigParams.h:81
EAS_AFP01
@ EAS_AFP01
Definition: AFP_ConfigParams.h:18
deg
#define deg
Definition: SbPolyhedron.cxx:17
ESE_RPOT
@ ESE_RPOT
Definition: AFP_ConfigParams.h:16
ESTT_SENSOR
@ ESTT_SENSOR
Definition: AFP_ConfigParams.h:17
AFPTOF_LBARDIMENSIONS::fLBarThickness
double fLBarThickness
Definition: AFP_ConfigParams.h:70
drawFromPickle.cos
cos
Definition: drawFromPickle.py:36
AFP_CONSTANTS::Stat_GlobalVacuumSensorThickness
static constexpr double Stat_GlobalVacuumSensorThickness
Definition: AFP_constants.h:15
AFP_CONFIGURATION::vecRPotFloorDistance
std::vector< double > vecRPotFloorDistance
Definition: AFP_ConfigParams.h:139
ESTT_VACUUMSENSOR
@ ESTT_VACUUMSENSOR
Definition: AFP_ConfigParams.h:17
AFP_CONSTANTS::SiT_Chip_length_x
static constexpr double SiT_Chip_length_x
Definition: AFP_constants.h:48
AFP_Geometry::getStationTransform
HepGeom::Transform3D getStationTransform(const char *pszStationName) const
Definition: AFP_Geometry.cxx:55
AFP_TDCONFIGURATION::fZPosInRPot
double fZPosInRPot
Definition: AFP_ConfigParams.h:100
AFPTOF_LBARDIMENSIONS::nBarX2ID
int nBarX2ID
Definition: AFP_ConfigParams.h:68
AFP_SIDCONFIGURATION::vecSensorXPos
std::vector< double > vecSensorXPos
Definition: AFP_ConfigParams.h:120
AFP_SIDCONFIGURATION::vecSensorYPos
std::vector< double > vecSensorYPos
Definition: AFP_ConfigParams.h:121
AFP_CONSTANTS::Stat_GlobalVacuumSensorZOffset
static constexpr double Stat_GlobalVacuumSensorZOffset
Definition: AFP_constants.h:16
AFP_Geometry::getSIDTransform
HepGeom::Transform3D getSIDTransform(const eSIDTransformType eType, const char *pszStationName, const int nPlateID) const
Definition: AFP_Geometry.cxx:136
AFP_Geometry::getPixelRow
int getPixelRow(const int nPixelID) const
Definition: AFP_Geometry.h:52
AFP_CONSTANTS::Stat_GlobalVacuumSensorID
static constexpr int Stat_GlobalVacuumSensorID
Definition: AFP_constants.h:14
lumiFormat.i
int i
Definition: lumiFormat.py:85
AFP_TDCONFIGURATION::fYPosInRPot
double fYPosInRPot
Definition: AFP_ConfigParams.h:99
ESE_TOF
@ ESE_TOF
Definition: AFP_ConfigParams.h:16
AFP_SIDCONFIGURATION::vecChipYPos
std::vector< double > vecChipYPos
Definition: AFP_ConfigParams.h:116
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AFP_CONFIGURATION::tdcfg
std::map< eAFPStation, AFP_TDCONFIGURATION > tdcfg
Definition: AFP_ConfigParams.h:137
AFP_SIDCONFIGURATION::vecXStaggering
std::vector< double > vecXStaggering
Definition: AFP_ConfigParams.h:112
AFP_CONSTANTS::SiT_Chip_thickness
static constexpr double SiT_Chip_thickness
Definition: AFP_constants.h:50
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
AFP_Geometry::getStationElementTransform
HepGeom::Transform3D getStationElementTransform(const char *pszStationName, eStationElement eElement, const int nPlateID=-1) const
Definition: AFP_Geometry.cxx:81
test_pyathena.parent
parent
Definition: test_pyathena.py:15
AFP_CONSTANTS::SiT_Plate_Main_length_x
static constexpr double SiT_Plate_Main_length_x
Definition: AFP_constants.h:25
AFPTOF_LBARDIMENSIONS::fLGuideLength
double fLGuideLength
Definition: AFP_ConfigParams.h:74
AFP_CONFIGURATION::vecStatNominalZPos
std::vector< double > vecStatNominalZPos
Definition: AFP_ConfigParams.h:141
drawFromPickle.tan
tan
Definition: drawFromPickle.py:36
AFP_Geometry::parseStationName
eAFPStation parseStationName(const char *pszStationName) const
Definition: AFP_Geometry.cxx:214
EAS_AFP03
@ EAS_AFP03
Definition: AFP_ConfigParams.h:18
AFP_Geometry::setupLBarsDims
void setupLBarsDims(const eAFPStation eStation)
Definition: AFP_Geometry.cxx:276
AFP_TDCONFIGURATION::mapTrainInfo
std::map< int, AFPTOF_TRAININFO > mapTrainInfo
Definition: AFP_ConfigParams.h:95
eAFPStation
eAFPStation
Definition: AFP_ConfigParams.h:18
AFPTOF_LBARDIMENSIONS::nBarX1ID
int nBarX1ID
Definition: AFP_ConfigParams.h:67
AFP_Geometry::getPixelColumn
int getPixelColumn(const int nPixelID) const
Definition: AFP_Geometry.h:53
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
AFPTOF_LBARREFDIMENSIONS::fLBarThickness
double fLBarThickness
Definition: AFP_ConfigParams.h:54
AFP_SIDCONFIGURATION::vecChipXLength
std::vector< double > vecChipXLength
Definition: AFP_ConfigParams.h:118
AFPTOF_LBARDIMENSIONS
Definition: AFP_ConfigParams.h:61
AFP_TDCONFIGURATION::RefBarDims
AFPTOF_LBARREFDIMENSIONS RefBarDims
Definition: AFP_ConfigParams.h:96
python.SystemOfUnits.mm
int mm
Definition: SystemOfUnits.py:83
AFP_TDCONFIGURATION::nX1PixCnt
int nX1PixCnt
Definition: AFP_ConfigParams.h:84
AFPTOF_LBARREFDIMENSIONS::fLGuideLength
double fLGuideLength
Definition: AFP_ConfigParams.h:56
AFP_TDCONFIGURATION::mapBarDims
std::map< int, AFPTOF_LBARDIMENSIONS > mapBarDims
Definition: AFP_ConfigParams.h:94
Athena::Status
Status
Athena specific StatusCode values.
Definition: AthStatusCode.h:22
AFPTOF_LBARDIMENSIONS::fRadYDim
double fRadYDim
Definition: AFP_ConfigParams.h:72
AFP_TDCONFIGURATION::fXFloorDistance
double fXFloorDistance
Definition: AFP_ConfigParams.h:98
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
AFP_CONSTANTS::SiT_Pixel_thickness
static constexpr double SiT_Pixel_thickness
Definition: AFP_constants.h:60
AFP_TDCONFIGURATION::fPixelX1Dim
double fPixelX1Dim
Definition: AFP_ConfigParams.h:86
AFP_CONSTANTS::SiT_Plate_Main_thickness
static constexpr double SiT_Plate_Main_thickness
Definition: AFP_constants.h:27
AFP_CONSTANTS::ToF_MinBarGap
static constexpr double ToF_MinBarGap
Definition: AFP_constants.h:70
AFP_Geometry::m_MapSIDTransToGlobal
std::map< eAFPStation, std::map< int, HepGeom::Transform3D > > m_MapSIDTransToGlobal
Definition: AFP_Geometry.h:26
LHCXOFFSET
#define LHCXOFFSET
Definition: AFP_constants.h:94
AFP_Geometry::m_CfgParams
AFP_CONFIGURATION m_CfgParams
Definition: AFP_Geometry.h:23
ESTT_PLATE
@ ESTT_PLATE
Definition: AFP_ConfigParams.h:17
AFP_TDCONFIGURATION::fPixelX2Dim
double fPixelX2Dim
Definition: AFP_ConfigParams.h:87
AFP_CONSTANTS::SiT_Pixel_length_toty
static constexpr double SiT_Pixel_length_toty
Definition: AFP_constants.h:62
AFP_SIDCONFIGURATION::vecYStaggering
std::vector< double > vecYStaggering
Definition: AFP_ConfigParams.h:113
ESE_SID
@ ESE_SID
Definition: AFP_ConfigParams.h:16
AFPTOF_LBARDIMENSIONS::nTrainID
int nTrainID
Definition: AFP_ConfigParams.h:69
AFPTOF_LBARDIMENSIONS::fLGuideWidth
double fLGuideWidth
Definition: AFP_ConfigParams.h:73
AFPTOF_LBARDIMENSIONS::fRadLength
double fRadLength
Definition: AFP_ConfigParams.h:71
AFPTOF_LBARREFDIMENSIONS::fRadLength
double fRadLength
Definition: AFP_ConfigParams.h:55
AFP_CONFIGURATION::vecRPotYPos
std::vector< double > vecRPotYPos
Definition: AFP_ConfigParams.h:140
AFP_CONSTANTS::SiT_Pixel_length_totx
static constexpr double SiT_Pixel_length_totx
Definition: AFP_constants.h:61
AFP_SIDCONFIGURATION::fSlope
double fSlope
Definition: AFP_ConfigParams.h:106
AFP_CONSTANTS::SiT_CorrZOffset
static constexpr double SiT_CorrZOffset
Definition: AFP_constants.h:23
AFP_SIDCONFIGURATION::vecChipRotAngle
std::vector< double > vecChipRotAngle
Definition: AFP_ConfigParams.h:117
AFP_TDCONFIGURATION::fAlpha
double fAlpha
Definition: AFP_ConfigParams.h:83
ESTT_FEI4CHIP
@ ESTT_FEI4CHIP
Definition: AFP_ConfigParams.h:17
fitman.k
k
Definition: fitman.py:528
AFP_SIDCONFIGURATION::fZDistanceInRPot
double fZDistanceInRPot
Definition: AFP_ConfigParams.h:109
AFPTOF_LBARREFDIMENSIONS
Definition: AFP_ConfigParams.h:46
AFP_SIDCONFIGURATION::vecChipXPos
std::vector< double > vecChipXPos
Definition: AFP_ConfigParams.h:115
AFP_CONSTANTS::ToF_LGuideTrainOffset
static constexpr double ToF_LGuideTrainOffset
Definition: AFP_constants.h:72