ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
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
}
BeamlineSetup.h
CollimatorSet.h
Spacer.h
Beamline.h
Plane.h
STLHelpers.h
MagnetSet.h
TwissFile.h
ForwardTracker::Beamline
Definition
ForwardTracker/ForwardTracker/Beamline.h:16
ForwardTracker::Collimator::Container_t
std::vector< ConstPtr_t > Container_t
Definition
ForwardTracker/ForwardTracker/Collimator.h:40
ForwardTracker::ConfigData
Definition
ForwardTracker/ForwardTracker/ConfigData.h:12
ForwardTracker::ConfigData::endMarker
double endMarker
Definition
ForwardTracker/ForwardTracker/ConfigData.h:21
ForwardTracker::IBeamElement::ListIter_t
List_t::iterator ListIter_t
Definition
ForwardTracker/ForwardTracker/IBeamElement.h:44
ForwardTracker::IBeamElement::List_t
std::list< ConstPtr_t > List_t
Definition
ForwardTracker/ForwardTracker/IBeamElement.h:43
ForwardTracker::Magnet::Container_t
std::vector< ConstPtr_t > Container_t
Definition
ForwardTracker/ForwardTracker/Magnet.h:39
ForwardTracker::Plane
Definition
ForwardTracker/ForwardTracker/Plane.h:16
ForwardTracker::Plane::ConstPtr_t
std::shared_ptr< const Plane > ConstPtr_t
Definition
ForwardTracker/ForwardTracker/Plane.h:33
ForwardTracker::Spacer
Definition
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:19
ForwardTracker::Spacer::ConstPtr_t
std::shared_ptr< const Spacer > ConstPtr_t
Definition
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:38
ForwardTracker
Definition
ForwardTracker/ForwardTracker/Beamline.h:12
ForwardTracker::absZGreater
bool absZGreater(const PtrType rhs, const PtrType lhs)
Definition
ForwardTracker/ForwardTracker/STLHelpers.h:14
ForwardTracker::BeamlineSetup
Beamline BeamlineSetup(const ConfigData &, const Side &)
Definition
BeamlineSetup.cxx:16
ForwardTracker::MagnetSet
Magnet::Container_t MagnetSet(const ConfigData &, const Side &)
Definition
MagnetSet.cxx:18
ForwardTracker::Side
Side
Definition
ForwardTrackerConstants.h:13
ForwardTracker::CollimatorSet
Collimator::Container_t CollimatorSet(const ConfigData &, const Side &side)
Definition
CollimatorSet.cxx:13
Generated on
for ATLAS Offline Software by
1.17.0