ATLAS Offline Software
Loading...
Searching...
No Matches
BevelledCylinderVolumeBoundaryAccessors.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
6// BevelledCylinderVolumeBoundaryAccessors.cxx, (c) ATLAS Detector software
8
9// Trk
11
14{
15 //-------------------------------------------------------------
16 // the cylinder case
17 // CylinderZincrease = 0
20 // CylinderZincrease = 1
23 // CylinderZincrease = 2
26 // CylinderZincrease = 3
29 //-------------------------------------------------------------
30 // the tube case
31 //(A) non-inverse cases
32 // RincreaseZincrease = 0
34 Trk::FourObjectsAccessor{ { 2, 1, 0, 3 }, false };
35 // RincreaseZdecrease = 1
37 Trk::FourObjectsAccessor{ { 2, 0, 1, 3 }, false };
38 // ZincreaseRincrease = 2
40 Trk::FourObjectsAccessor{ { 1, 2, 0, 3 }, false };
41 // ZdecreaseRincrease = 3
43 Trk::FourObjectsAccessor{ { 0, 2, 1, 3 }, false };
44 // RdecreaseZincrease = 4
46 Trk::FourObjectsAccessor{ { 3, 1, 0, 2 }, false };
47 // RdecreaseZdecrease = 5
49 Trk::FourObjectsAccessor{ { 3, 0, 1, 2 }, false };
50 // ZincreaseRdecrease = 6
52 Trk::FourObjectsAccessor{ { 1, 3, 0, 2 }, false };
53 // ZdecreaseRdecrease = 7
55 Trk::FourObjectsAccessor{ { 0, 3, 1, 2 }, false };
56 //(B) inverse cases
57 // TubeOutsideRminRdecrease = 8
59 Trk::FourObjectsAccessor{ { 3, 1, 0, 2 }, true };
60 // TubeOutsideRmaxRincrease = 9
62 Trk::FourObjectsAccessor{ { 2, 1, 0, 3 }, true };
63 // TubeOutsideZminZdecrease = 10
65 Trk::FourObjectsAccessor{ { 0, 3, 2, 1 }, true };
66 // TubeOutsideZmaxZincrease = 11
68 Trk::FourObjectsAccessor{ { 1, 3, 2, 0 }, true };
69
70 //-------------------------------------------------------------
71 // the sectoral cylinder case
73 Trk::FiveObjectsAccessor{ 0, 1, 2, 3, 4 };
74 //-------------------------------------------------------------
75 // the sectoral tube case
77 Trk::SixObjectsAccessor{ 0, 1, 2, 3, 4, 5 };
78 //-------------------------------------------------------------
79}
80
81
std::array< ObjectAccessor::value_type, 5 > FiveObjectsAccessor
std::pair< std::array< ObjectAccessor::value_type, 4 >, bool > FourObjectsAccessor
std::array< ObjectAccessor::value_type, 3 > ThreeObjectsAccessor
std::array< ObjectAccessor::value_type, 6 > SixObjectsAccessor
@ BevelledCylinderZincrease
Cylinder hit, then pos.
@ BevelledCylinderZdecrease
Cylinder hit, the neg.
@ BevelledTubeOutsideRminRdecrease
Accessor type [ 3,1,0,2] - inverse case.
@ BevelledTubeOutsideZmaxZincrease
Accessor type [ 1,3,2,0 ] - inverse case.
@ BevelledTubeRincreaseZincrease
Accessor type [ 2,1,0,3 ].
@ BevelledTubeZincreaseRdecrease
Accessor type [ 1,3,0,2 ].
@ BevelledTubeRdecreaseZincrease
Accessor type [ 3,1,0,2 ].
@ BevelledTubeZdecreaseRdecrease
Accessor type [ 0,3,1,2 ].
@ BevelledTubeRdecreaseZdecrease
Accessor type [ 3,0,1,2 ].
@ BevelledTubeRincreaseZdecrease
Accessor type [ 2,0,1,3 ].
@ BevelledTubeZincreaseRincrease
Accessor type [ 1,2,0,3 ].
@ BevelledTubeOutsideZminZdecrease
Accessor type [ 0,3,2,1 ] - inverse case.
@ BevelledTubeZdecreaseRincrease
Accessor type [ 0,2,1,3 ].
@ BevelledTubeOutsideRmaxRincrease
Accessor type [ 2,1,0,3 ] - inverse case.