ATLAS Offline Software
Loading...
Searching...
No Matches
BoxEnvelope.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 G4ATLASTOOLS_BoxEnvelope_H
6#define G4ATLASTOOLS_BoxEnvelope_H
7
8// Base classes
10
11// Members
12
13// STL library
14#include <string>
15#include <vector>
16#include <map>
17
21{
22 public:
24 BoxEnvelope(const std::string& type, const std::string& name, const IInterface *parent);
25 ~BoxEnvelope() = default;
26
28
29 virtual void BuildGeometry() override final;
30
31 private:
32 Gaudi::Property<double> m_dX{this, "dX", 0., "Envelope dX"};
33 Gaudi::Property<double> m_dY{this, "dY", 0., "Envelope dY"};
34 Gaudi::Property<double> m_dZ{this, "dZ", 0., "Envelope dZ"};
35 Gaudi::Property<std::string> m_materialName{this, "Material", "Air", "Envelope Material"};
36 Gaudi::Property<unsigned int> m_numberOfHoles{this, "NumberOfHoles", 0, "Number of hole volumes to subtract from the initial envelope volume."};
37 Gaudi::Property<std::vector<std::string> > m_holeNames{this, "HoleNames", {} };
38 Gaudi::Property<std::vector<double> > m_hole_dX{this, "Hole_dX", {} };
39 Gaudi::Property<std::vector<double> > m_hole_dY{this, "Hole_dY", {} };
40 Gaudi::Property<std::vector<double> > m_hole_dZ{this, "Hole_dZ", {} };
41 Gaudi::Property<std::vector<double> > m_holePosX{this, "HolePosX", {} };
42 Gaudi::Property<std::vector<double> > m_holePosY{this, "HolePosY", {} };
43 Gaudi::Property<std::vector<double> > m_holePosZ{this, "HolePosZ", {} };
44};
45
46#endif
Gaudi::Property< std::vector< double > > m_holePosZ
Definition BoxEnvelope.h:43
Gaudi::Property< double > m_dY
Definition BoxEnvelope.h:33
Gaudi::Property< std::string > m_materialName
Definition BoxEnvelope.h:35
BoxEnvelope(const std::string &type, const std::string &name, const IInterface *parent)
Basic constructor and destructor.
Gaudi::Property< std::vector< double > > m_hole_dZ
Definition BoxEnvelope.h:40
virtual void BuildGeometry() override final
virtual methods being implemented here
Gaudi::Property< std::vector< double > > m_hole_dY
Definition BoxEnvelope.h:39
Gaudi::Property< std::vector< double > > m_holePosX
Definition BoxEnvelope.h:41
Gaudi::Property< unsigned int > m_numberOfHoles
Definition BoxEnvelope.h:36
~BoxEnvelope()=default
Gaudi::Property< std::vector< std::string > > m_holeNames
Definition BoxEnvelope.h:37
Gaudi::Property< double > m_dX
Definition BoxEnvelope.h:32
Gaudi::Property< std::vector< double > > m_holePosY
Definition BoxEnvelope.h:42
Gaudi::Property< double > m_dZ
Definition BoxEnvelope.h:34
Gaudi::Property< std::vector< double > > m_hole_dX
Definition BoxEnvelope.h:38
DetectorGeometryBase(const std::string &type, const std::string &name, const IInterface *parent)
Support class for PropertyMgr.
Definition Property.h:23
=============================================================================
#define private