ATLAS Offline Software
ForwardTracker/ForwardTracker/Beamline.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef FORWARDTRACKER_BEAMLINE_H
6 #define FORWARDTRACKER_BEAMLINE_H
7 
8 #include "IBeamElement.h"
9 #include <iosfwd>
10 #include <string>
11 
12 namespace ForwardTracker {
13 
14  class IParticle;
15 
16  class Beamline {
17 
18  public:
19 
20  Beamline() {};
22  Beamline(const Beamline&);
23 
24  Beamline& operator=(Beamline rhs) { this->swap(rhs); return *this; }
25 
26  void track(IParticle&) const;
27 
28  std::string str() const;
29 
30  private:
31 
33 
34  void swap(Beamline& other) { m_elements.swap(other.m_elements); }
35  };
36 
37  std::ostream& operator<<(std::ostream&, const Beamline&);
38 }
39 
40 #endif
ForwardTracker::Beamline
Definition: ForwardTracker/ForwardTracker/Beamline.h:16
ForwardTracker::Beamline::Beamline
Beamline()
Definition: ForwardTracker/ForwardTracker/Beamline.h:20
ForwardTracker::IBeamElement::Container_t
std::vector< ConstPtr_t > Container_t
Definition: ForwardTracker/ForwardTracker/IBeamElement.h:40
ForwardTracker::Beamline::str
std::string str() const
Definition: ForwardTracker/src/Beamline.cxx:103
ForwardTracker::IBeamElement::ConstListIter_t
List_t::const_iterator ConstListIter_t
Definition: ForwardTracker/ForwardTracker/IBeamElement.h:45
ForwardTracker::operator<<
std::ostream & operator<<(std::ostream &, const Beamline &)
Definition: ForwardTracker/src/Beamline.cxx:105
ForwardTracker::Beamline::operator=
Beamline & operator=(Beamline rhs)
Definition: ForwardTracker/ForwardTracker/Beamline.h:24
ForwardTracker::IParticle
Definition: ForwardDetectors/ForwardTracker/ForwardTracker/IParticle.h:16
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
IBeamElement.h
ForwardTracker::Beamline::track
void track(IParticle &) const
Definition: ForwardTracker/src/Beamline.cxx:72
ForwardTracker::Beamline::m_elements
IBeamElement::Container_t m_elements
Definition: ForwardTracker/ForwardTracker/Beamline.h:32
ForwardTracker
Definition: ForwardTracker/ForwardTracker/Beamline.h:12
ForwardTracker::Beamline::swap
void swap(Beamline &other)
Definition: ForwardTracker/ForwardTracker/Beamline.h:34