ATLAS Offline Software
HRoute.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef HRoute_H
6 #define HRoute_H
7 
8 #include "Route.h"
9 #include <vector>
10 
11 class ServiceVolume;
12 
13 class HRoute : public Route {
14 public:
15 
16  typedef std::vector<ServiceVolume*> VolumeContainer;
17 
18  HRoute() : Route() {}
19  HRoute( double r, double zmi, double zma, double zexit, const std::string& name) :
20  Route(name),
21  m_radius(r), m_zMin(zmi), m_zMax(zma), m_zExit(zexit), m_next(0) {}
22 
23  double zMin() const {return m_zMin;}
24  double zMax() const {return m_zMax;}
25  double radius() const {return m_radius;}
26  double zExit() const {return m_zExit;}
27 
28  virtual double position() const {return radius();}
29 
30  virtual double exit() const {return zExit();}
31 
32  virtual Route* nextRoute() {return m_next;}
33 
34  const VolumeContainer& volumes() const {return m_volumes;}
35 
36  virtual void addVolume( ServiceVolume* vol) {m_volumes.push_back(vol);}
37 
38  virtual void setNextRoute( Route* nr) {m_next = nr;}
39 
40 private:
41 
42  double m_radius{};
43  double m_zMin{};
44  double m_zMax{};
45  double m_zExit{};
47 
49 
50 };
51 
52 #endif
HRoute::position
virtual double position() const
Definition: HRoute.h:28
ServiceVolume
Definition: InDetServMatGeoModel/src/ServiceVolume.h:14
beamspotman.r
def r
Definition: beamspotman.py:676
HRoute::nextRoute
virtual Route * nextRoute()
Definition: HRoute.h:32
HRoute::zMin
double zMin() const
Definition: HRoute.h:23
HRoute::volumes
const VolumeContainer & volumes() const
Definition: HRoute.h:34
HRoute::m_zMax
double m_zMax
Definition: HRoute.h:44
HRoute::setNextRoute
virtual void setNextRoute(Route *nr)
Definition: HRoute.h:38
Route::name
const std::string & name() const
Definition: Route.h:42
HRoute::HRoute
HRoute(double r, double zmi, double zma, double zexit, const std::string &name)
Definition: HRoute.h:19
Route.h
HRoute::m_radius
double m_radius
Definition: HRoute.h:42
HRoute::exit
virtual double exit() const
Definition: HRoute.h:30
HRoute::VolumeContainer
std::vector< ServiceVolume * > VolumeContainer
Definition: HRoute.h:16
HRoute::zMax
double zMax() const
Definition: HRoute.h:24
HRoute::addVolume
virtual void addVolume(ServiceVolume *vol)
Definition: HRoute.h:36
HRoute::m_next
Route * m_next
Definition: HRoute.h:46
HRoute::HRoute
HRoute()
Definition: HRoute.h:18
HRoute::radius
double radius() const
Definition: HRoute.h:25
Route
Definition: Route.h:15
HRoute::zExit
double zExit() const
Definition: HRoute.h:26
HRoute::m_zMin
double m_zMin
Definition: HRoute.h:43
HRoute
Definition: HRoute.h:13
HRoute::m_zExit
double m_zExit
Definition: HRoute.h:45
HRoute::m_volumes
VolumeContainer m_volumes
Definition: HRoute.h:48