ATLAS Offline Software
ForwardDetectors
ForwardTracker
src
BeamlineSetup.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
ForwardTracker/Beamline.h
"
6
#include "
ForwardTracker/BeamlineSetup.h
"
7
#include "
ForwardTracker/CollimatorSet.h
"
8
#include "
ForwardTracker/MagnetSet.h
"
9
#include "
ForwardTracker/Plane.h
"
10
#include "
ForwardTracker/Spacer.h
"
11
#include "
ForwardTracker/STLHelpers.h
"
12
#include "
ForwardTracker/TwissFile.h
"
13
14
namespace
ForwardTracker
{
15
16
Beamline
BeamlineSetup
(
const
ConfigData
& cData,
const
Side
&
side
) {
17
18
Magnet::Container_t
magnets =
MagnetSet
(cData,
side
);
19
Collimator::Container_t
collimators =
CollimatorSet
(cData,
side
);
20
Plane::ConstPtr_t
endPlane(
new
Plane
(cData.
endMarker
,
side
));
21
22
IBeamElement::List_t
elements;
23
24
elements.assign(magnets.begin(), magnets.end());
25
elements.insert(elements.end(), collimators.begin(), collimators.end());
26
elements.push_back(endPlane);
27
elements.sort(absZGreater<IBeamElement::ConstPtr_t>);
28
29
IBeamElement::ListIter_t
current
= elements.begin();
30
IBeamElement::ListIter_t
last = elements.end();
31
32
elements.push_front(
Spacer::ConstPtr_t
(
new
Spacer
(0., (*current)->frontFace(), (*current)->side())));
33
34
++
current
;
35
36
for
(;
current
!= last; ++
current
) {
37
38
IBeamElement::ListIter_t
previous
=
current
;
39
40
--
previous
;
41
42
elements.insert(
current
,
Spacer::ConstPtr_t
(
new
Spacer
(*
previous
, *
current
)));
43
}
44
45
Beamline
beamline(elements.begin(), elements.end());
46
47
return
beamline;
48
}
49
}
fillPileUpNoiseLumi.current
current
Definition:
fillPileUpNoiseLumi.py:52
ForwardTracker::Collimator::Container_t
std::vector< ConstPtr_t > Container_t
Definition:
ForwardTracker/ForwardTracker/Collimator.h:37
ForwardTracker::Beamline
Definition:
ForwardTracker/ForwardTracker/Beamline.h:16
Plane.h
STLHelpers.h
ForwardTracker::Plane
Definition:
ForwardTracker/ForwardTracker/Plane.h:16
TRT::Hit::side
@ side
Definition:
HitInfo.h:83
ForwardTracker::Magnet::Container_t
std::vector< ConstPtr_t > Container_t
Definition:
ForwardTracker/ForwardTracker/Magnet.h:39
MagnetSet.h
Side
Definition:
WaferTree.h:36
ForwardTracker::IBeamElement::List_t
std::list< ConstPtr_t > List_t
Definition:
ForwardTracker/ForwardTracker/IBeamElement.h:43
ForwardTracker::Plane::ConstPtr_t
std::shared_ptr< const Plane > ConstPtr_t
Definition:
ForwardTracker/ForwardTracker/Plane.h:33
ForwardTracker::CollimatorSet
Collimator::Container_t CollimatorSet(const ConfigData &, const Side &side)
Definition:
CollimatorSet.cxx:14
CollimatorSet.h
BeamlineSetup.h
ForwardTracker::BeamlineSetup
Beamline BeamlineSetup(const ConfigData &, const Side &)
Definition:
BeamlineSetup.cxx:16
TwissFile.h
Spacer.h
ForwardTracker::Spacer
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:19
ForwardTracker::IBeamElement::ListIter_t
List_t::iterator ListIter_t
Definition:
ForwardTracker/ForwardTracker/IBeamElement.h:44
ForwardTracker::MagnetSet
Magnet::Container_t MagnetSet(const ConfigData &, const Side &)
Definition:
MagnetSet.cxx:18
ForwardTracker
Definition:
ForwardTracker/ForwardTracker/Beamline.h:12
ForwardTracker::ConfigData::endMarker
double endMarker
Definition:
ForwardTracker/ForwardTracker/ConfigData.h:21
ForwardTracker::ConfigData
Definition:
ForwardTracker/ForwardTracker/ConfigData.h:12
ForwardTracker::Spacer::ConstPtr_t
std::shared_ptr< const Spacer > ConstPtr_t
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:38
Beamline.h
Trk::previous
@ previous
Definition:
BinningData.h:32
Generated on Fri Jan 10 2025 21:07:21 for ATLAS Offline Software by
1.8.18