DLG4::VolumeBuilders
A fluent interface for Geant4 geometry definition.
Loading...
Searching...
No Matches
IVolumeBuilder.hh
Go to the documentation of this file.
1
10#ifndef IVOLUMEBUILDER_HH
11#define IVOLUMEBUILDER_HH
12#include <G4LogicalVolume.hh>
13#include <G4Transform3D.hh>
14#include <G4VSolid.hh>
15
16namespace DLG4::VolumeBuilders {
26 public:
27 virtual G4VSolid *GetBaseSolid() = 0;
29 virtual G4VSolid *GetFinalSolid() = 0;
31 virtual G4LogicalVolume *GetLogicalVolume() = 0;
33 virtual G4VPhysicalVolume *GetPlacement() = 0;
35 [[nodiscard]] virtual G4Transform3D GetPhysTransform() const = 0;
36
37 virtual ~IVolumeBuilder() = default;
38 };
39}
40#endif //IVOLUMEBUILDER_HH
virtual G4VSolid * GetFinalSolid()=0
virtual G4VSolid * GetBaseSolid()=0
virtual G4Transform3D GetPhysTransform() const =0
virtual G4LogicalVolume * GetLogicalVolume()=0
virtual G4VPhysicalVolume * GetPlacement()=0