ATLAS Offline Software
Loading...
Searching...
No Matches
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"
10
13#include <string>
14
16class GeoMaterial;
17
19{
20public:
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
34 const GeoMaterial* m_matEther;
35 const GeoMaterial* m_matHypUr;
36
38};
39
40#endif
std::map< const GeoOpticalPhysVol *, G4VPhysicalVolume *, std::less< const GeoOpticalPhysVol * > > OpticalVolumesMap
Define macros for attributes used to control the static checker.
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
void PrintSTInfo(const std::string &volume) const
Prints info when some PhysVol contains both types (PV and ST) of daughters.
Geo2G4AssemblyVolume * BuildAssembly(const PVConstLink &pv)
ExtParameterisedVolumeBuilder(const std::string &n, Geo2G4AssemblyFactory *G4AssemblyFactory)
virtual G4LogicalVolume * Build(PVConstLink pv, OpticalVolumesMap *optical_volumes=0)=0