ATLAS Offline Software
Loading...
Searching...
No Matches
PolyconicalEnvelope.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_PolyconicalEnvelope_H
6#define G4ATLASTOOLS_PolyconicalEnvelope_H
7
8// Base classes
10
11// STL library
12#include <string>
13#include <vector>
14
18{
19 public:
20 // Basic constructor and destructor
21 PolyconicalEnvelope(const std::string& type, const std::string& name, const IInterface *parent);
23
25
26 virtual void BuildGeometry() override final;
27
28 private:
29 Gaudi::Property<std::string> m_materialName{this, "Material", "Air", "Envelope Material"};
30 Gaudi::Property<unsigned int> m_surfaceNr{this, "NSurfaces", 0, "Number of surfaces in Z"};
31 Gaudi::Property<std::vector<double> > m_innerRadii{this, "InnerRadii", {}, "Envelope inner radii"};
32 Gaudi::Property<std::vector<double> > m_outerRadii{this, "OuterRadii", {}, "Envelope outer radii"};
33 Gaudi::Property<std::vector<double> > m_ZSurfaces{this, "ZSurfaces", {}, "Envelope surface Zs"};
34 Gaudi::Property<double> m_startphi{this, "StartPhi", 0., ""};
35 Gaudi::Property<double> m_deltaphi{this, "DeltaPhi", 360.*CLHEP::deg, ""};
36};
37
38#endif
DetectorGeometryBase(const std::string &type, const std::string &name, const IInterface *parent)
Gaudi::Property< std::vector< double > > m_outerRadii
Gaudi::Property< unsigned int > m_surfaceNr
Gaudi::Property< std::string > m_materialName
Gaudi::Property< double > m_startphi
Gaudi::Property< std::vector< double > > m_innerRadii
Gaudi::Property< std::vector< double > > m_ZSurfaces
virtual void BuildGeometry() override final
virtual methods being implemented here
Gaudi::Property< double > m_deltaphi
~PolyconicalEnvelope()=default
PolyconicalEnvelope(const std::string &type, const std::string &name, const IInterface *parent)
Support class for PropertyMgr.
Definition Property.h:23
=============================================================================
STL namespace.
#define private