ATLAS Offline Software
CylindricalEnvelope.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // class header
7 
8 // Geant4 includes used in functions
9 #include "G4NistManager.hh"
10 #include "G4LogicalVolume.hh"
11 #include "G4PVPlacement.hh"
12 #include "G4SystemOfUnits.hh"
13 #include "G4Tubs.hh"
14 
15 CylindricalEnvelope::CylindricalEnvelope(const std::string& type, const std::string& name, const IInterface* parent)
17 {
18  ATH_MSG_DEBUG( "CylindricalEnvelope constructor for " << name );
19 }
20 
22 {
23  ATH_MSG_DEBUG( "CylindricalEnvelope::BuildGeometry(): (Inner Radius, Outer Radius, dZ) = ("<<m_innerRadius<<", "<<m_outerRadius<<", "<<m_dZ <<")");
24 
25  // Get nist material manager
26  G4NistManager* nist = G4NistManager::Instance();
27 
28  G4Material* mat = nist->FindOrBuildMaterial(m_materialName.value());
29 
30  G4Tubs* envSolid=new G4Tubs(m_detectorName.value(),m_innerRadius,m_outerRadius,m_dZ,m_startphi,m_deltaphi);
31 
32  G4LogicalVolume* logicWorld = new G4LogicalVolume(envSolid,mat,m_detectorName.value());
33 
34  m_envelope.theEnvelope=logicWorld;
35 }
Envelope::theEnvelope
G4LogicalVolume * theEnvelope
Definition: IDetectorGeometryTool.h:20
mat
GeoMaterial * mat
Definition: LArDetectorConstructionTBEC.cxx:53
CylindricalEnvelope::m_deltaphi
Gaudi::Property< double > m_deltaphi
Definition: CylindricalEnvelope.h:39
CylindricalEnvelope::m_innerRadius
Gaudi::Property< double > m_innerRadius
Definition: CylindricalEnvelope.h:35
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
DetectorGeometryBase::m_envelope
Envelope m_envelope
Definition: DetectorGeometryBase.h:70
DetectorGeometryBase::m_detectorName
Gaudi::Property< std::string > m_detectorName
Definition: DetectorGeometryBase.h:71
CylindricalEnvelope::m_startphi
Gaudi::Property< double > m_startphi
Definition: CylindricalEnvelope.h:38
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
DetectorGeometryBase
Definition: DetectorGeometryBase.h:26
CylindricalEnvelope::m_dZ
Gaudi::Property< double > m_dZ
Definition: CylindricalEnvelope.h:37
CylindricalEnvelope::m_materialName
Gaudi::Property< std::string > m_materialName
Definition: CylindricalEnvelope.h:34
CylindricalEnvelope::BuildGeometry
virtual void BuildGeometry()
virtual methods being implemented here
Definition: CylindricalEnvelope.cxx:21
CylindricalEnvelope.h
CylindricalEnvelope::CylindricalEnvelope
CylindricalEnvelope(const std::string &type, const std::string &name, const IInterface *parent)
Basic constructor and destructor.
Definition: CylindricalEnvelope.cxx:15
CylindricalEnvelope::m_outerRadius
Gaudi::Property< double > m_outerRadius
Definition: CylindricalEnvelope.h:36