FDsimG4Filter.hh
Go to the documentation of this file.
1 #ifndef _TelescopeSimulatorLX_FDsimG4Filter_h_
2 #define _TelescopeSimulatorLX_FDsimG4Filter_h_
3 
4 #include <G4ThreeVector.hh>
5 #include <globals.hh>
6 
7 
8 class G4VPhysicalVolume;
9 class G4LogicalVolume;
10 class G4SubtractionSolid;
11 class G4UnionSolid;
12 class G4Material;
13 class G4LogicalBorderSurface;
14 class G4OpticalSurface;
15 
16 
17 namespace TelescopeSimulatorLX {
18 
19  class FDsimG4DetectorConstruction;
20 
21 
22  class FDsimG4Filter {
23  public:
24  FDsimG4Filter(G4VPhysicalVolume*);
25 
26  G4LogicalVolume* GetLogicalVolume() const { return fFilter_log; }
27 
28  G4double GetRadius() const { return fRadius; }
29  G4double GetThickness() const { return fThickness; }
30 
31  void DumpInfo();
32 
33  private:
34  void MakeFilter();
35  void MakeFrame();
36 
37  private:
39  G4double fRadius;
40  G4double fThickness;
41  G4VPhysicalVolume* fMother = nullptr;
42  const G4Material* fMaterial = nullptr;
43  G4ThreeVector fPosition;
44  G4LogicalVolume* fFilter_log = nullptr;
45 
46  G4double fFrameSize;
47  G4double fFrameThickness;
48  G4double fFrameArmWidth;
49  G4UnionSolid* fFrameSolid = nullptr;
50  G4LogicalVolume* fFrame_log = nullptr;
51  G4OpticalSurface* fFrameOpticalSurface = nullptr;
52 
53  };
54 
55 }
56 
57 
58 #endif
FDsimG4Filter(G4VPhysicalVolume *)
G4OpticalSurface * fFrameOpticalSurface
G4LogicalVolume * GetLogicalVolume() const
const FDsimG4DetectorConstruction * fDetector

, generated on Tue Sep 26 2023.