OMSim
Geant4 for IceCube optical module studies
Loading...
Searching...
No Matches
OMSimDetectorConstruction.hh
1
7#pragma once
8#include "OMSimOpticalModule.hh"
9
10#include <G4Orb.hh>
11#include <G4VUserDetectorConstruction.hh>
12
18class OMSimDetectorConstruction : public G4VUserDetectorConstruction
19{
20public:
23 G4VPhysicalVolume *Construct();
24 void ConstructSDandField() override;
25 void registerSensitiveDetector(G4LogicalVolume* logVol, G4VSensitiveDetector* aSD);
26
27 G4VPhysicalVolume *m_worldPhysical;
28
29protected:
30 virtual void constructWorld() = 0;
31 virtual void constructDetector() = 0;
32
33 G4VSolid *m_worldSolid;
34 G4LogicalVolume *m_worldLogical;
35 OMSimInputData *m_data;
36 struct SDInfo {
37 G4LogicalVolume* logicalVolume;
38 G4VSensitiveDetector* sensitiveDetector;
39 };
40 std::vector<SDInfo> m_sensitiveDetectors;
41};
Class for detector construction in the effective area simulation.
Definition OMSimDetectorConstruction.hh:19
G4VPhysicalVolume * Construct()
Constructs the selected detector from the command line argument and returns the physical world volume...
Definition OMSimDetectorConstruction.cc:33
Manages the input data, including parsing and storing material properties.
Definition OMSimInputData.hh:189
Definition OMSimDetectorConstruction.hh:36