ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Utilities
Geo2G4
src
ExtParameterisedVolumeBuilder.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 GEO2G4_ExtParameterisedVolumeBuilder_H
6
#define GEO2G4_ExtParameterisedVolumeBuilder_H
7
8
#include "
VolumeBuilder.h
"
9
#include "
Geo2G4AssemblyFactory.h
"
10
11
#include "
AthenaBaseComps/AthMessaging.h
"
12
#include "
CxxUtils/checker_macros.h
"
13
#include <string>
14
15
class
Geo2G4AssemblyVolume
;
16
class
GeoMaterial;
17
18
class
ATLAS_NOT_THREAD_SAFE
ExtParameterisedVolumeBuilder
:
public
VolumeBuilder
,
public
AthMessaging
19
{
20
public
:
21
ExtParameterisedVolumeBuilder
(
const
std::string& n,
Geo2G4AssemblyFactory
* G4AssemblyFactory);
23
virtual
G4LogicalVolume*
Build
(PVConstLink pv,
OpticalVolumesMap
* optical_volumes = 0)
override
;
25
Geo2G4AssemblyVolume
*
BuildAssembly
(
const
PVConstLink& pv);
26
27
private
:
29
void
PrintSTInfo
(
const
std::string& volume)
const
;
31
void
getMatEther
();
32
33
bool
m_getMatEther
{
true
};
34
const
GeoMaterial*
m_matEther
{
nullptr
};
35
const
GeoMaterial*
m_matHypUr
{
nullptr
};
36
37
Geo2G4AssemblyFactory
*
m_G4AssemblyFactory
;
38
};
39
40
#endif
AthMessaging.h
Geo2G4AssemblyFactory.h
VolumeBuilder.h
OpticalVolumesMap
std::map< const GeoOpticalPhysVol *, G4VPhysicalVolume *, std::less< const GeoOpticalPhysVol * > > OpticalVolumesMap
Definition
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:17
checker_macros.h
Define macros for attributes used to control the static checker.
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition
checker_macros.h:212
AthMessaging::AthMessaging
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Definition
AthMessaging.cxx:13
ExtParameterisedVolumeBuilder::m_G4AssemblyFactory
Geo2G4AssemblyFactory * m_G4AssemblyFactory
Definition
ExtParameterisedVolumeBuilder.h:37
ExtParameterisedVolumeBuilder::PrintSTInfo
void PrintSTInfo(const std::string &volume) const
Prints info when some PhysVol contains both types (PV and ST) of daughters.
Definition
ExtParameterisedVolumeBuilder.cxx:240
ExtParameterisedVolumeBuilder::m_matEther
const GeoMaterial * m_matEther
Definition
ExtParameterisedVolumeBuilder.h:34
ExtParameterisedVolumeBuilder::BuildAssembly
Geo2G4AssemblyVolume * BuildAssembly(const PVConstLink &pv)
Definition
ExtParameterisedVolumeBuilder.cxx:180
ExtParameterisedVolumeBuilder::m_getMatEther
bool m_getMatEther
Definition
ExtParameterisedVolumeBuilder.h:33
ExtParameterisedVolumeBuilder::m_matHypUr
const GeoMaterial * m_matHypUr
Definition
ExtParameterisedVolumeBuilder.h:35
ExtParameterisedVolumeBuilder::getMatEther
void getMatEther()
Definition
ExtParameterisedVolumeBuilder.cxx:254
ExtParameterisedVolumeBuilder::ExtParameterisedVolumeBuilder
ExtParameterisedVolumeBuilder(const std::string &n, Geo2G4AssemblyFactory *G4AssemblyFactory)
Definition
ExtParameterisedVolumeBuilder.cxx:32
Geo2G4AssemblyFactory
Definition
Geo2G4AssemblyFactory.h:16
Geo2G4AssemblyVolume
Definition
Geo2G4AssemblyVolume.h:16
VolumeBuilder::Build
virtual G4LogicalVolume * Build(PVConstLink pv, OpticalVolumesMap *optical_volumes=0)=0
VolumeBuilder::VolumeBuilder
VolumeBuilder(const std::string &k)
Definition
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:22
Generated on
for ATLAS Offline Software by
1.17.0