ATLAS Offline Software
Simulation
G4Utilities
Geo2G4
src
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.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_VolumeBuilder_H
6
#define GEO2G4_VolumeBuilder_H
7
8
#include "G4LogicalVolume.hh"
9
#include "
Geo2G4SvcAccessor.h
"
10
11
#include "
GeoModelUtilities/GeoOpticalPhysVol.h
"
12
13
#include "G4VPhysicalVolume.hh"
14
15
#include <string>
16
#include <iostream>
17
#include <map>
18
19
typedef
std::map< const GeoOpticalPhysVol*, G4VPhysicalVolume*,std::less< const GeoOpticalPhysVol*> >
OpticalVolumesMap
;
20
21
class
VolumeBuilder
22
{
23
public
:
24
VolumeBuilder
(
const
std::string&
k
):
m_paramOn
(false),
m_key
(
k
)
25
{}
26
27
virtual
~VolumeBuilder
()
28
{}
29
30
std::string
GetKey
()
const
{
return
m_key
;}
31
32
// flag controlling Parameterization to Parameterization translation
33
void
SetParam
(
bool
flag
){
m_paramOn
=
flag
;}
34
bool
GetParam
()
const
{
return
m_paramOn
;}
35
36
virtual
G4LogicalVolume*
Build
(PVConstLink
pv
,
OpticalVolumesMap
* optical_volumes = 0) = 0;
37
38
protected
:
39
bool
m_paramOn
;
40
41
private
:
42
std::string
m_key
;
43
};
44
#endif
VolumeBuilder::Build
virtual G4LogicalVolume * Build(PVConstLink pv, OpticalVolumesMap *optical_volumes=0)=0
VolumeBuilder
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:22
GeoOpticalPhysVol.h
OpticalVolumesMap
std::map< const GeoOpticalPhysVol *, G4VPhysicalVolume *, std::less< const GeoOpticalPhysVol * > > OpticalVolumesMap
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:19
VolumeBuilder::GetParam
bool GetParam() const
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:34
VolumeBuilder::VolumeBuilder
VolumeBuilder(const std::string &k)
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:24
VolumeBuilder::GetKey
std::string GetKey() const
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:30
master.flag
bool flag
Definition:
master.py:29
VolumeBuilder::m_key
std::string m_key
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:42
VolumeBuilder::m_paramOn
bool m_paramOn
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:39
python.changerun.pv
pv
Definition:
changerun.py:81
VolumeBuilder::~VolumeBuilder
virtual ~VolumeBuilder()
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:27
VolumeBuilder::SetParam
void SetParam(bool flag)
Definition:
Simulation/G4Utilities/Geo2G4/src/VolumeBuilder.h:33
Geo2G4SvcAccessor.h
fitman.k
k
Definition:
fitman.py:528
Generated on Tue Jul 2 2024 21:32:25 for ATLAS Offline Software by
1.8.18