EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
eASTBeamPipe.hh
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file eASTBeamPipe.hh
1 // ********************************************************************
2 //
3 // eASTBeamPipe.hh
4 // eAST Beam pipe component
5 //
6 // History
7 // May 8th, 2021 : first implementation
8 //
9 // ********************************************************************
10 
11 #ifndef eASTBeamPipe_H
12 #define eASTBeamPipe_H 1
13 
15 
16 class G4GenericMessenger;
17 
19 {
20  public:
21  eASTBeamPipe(G4String compName, G4int vl = 0, const G4bool validate_gdml=false);
22  virtual ~eASTBeamPipe();
23 
24  public:
25  virtual void SetUp();
26  virtual void Construct(G4VPhysicalVolume*);
27 
28  private:
29  G4GenericMessenger* messenger = nullptr;
30  G4String envGdmlFileName = "*NOTDEFINED*";
31  G4String gdmlFileName = "*NOTDEFINED*";
32  G4String matFileName = "*NOTDEFINED*";
33  G4bool materialToBeSet = false;
34 
35  protected:
36  const G4bool m_validate_gdml=false;
37 
38  public:
39  void SetEnvGDML(G4String fn)
41  void SetGDML(G4String fn)
42  { gdmlFileName = LocateDataFile(fn); }
43  void SetMatFile(G4String fn)
44  {
46  materialToBeSet = true;
47  }
48 };
49 
50 #endif
51