1 #ifndef MACRO_G4SETUPEICDETECTOR_C
2 #define MACRO_G4SETUPEICDETECTOR_C
7 #include <G4_Barrel_EIC.C>
10 #include <G4_CEmc_EIC.C>
15 #include <G4_FST_EIC.C>
16 #include <G4_GEM_EIC.C>
17 #include <G4_HcalIn_ref.C>
18 #include <G4_HcalOut_ref.C>
20 #include <G4_Magnet.C>
21 #include <G4_Mvtx_EIC.C>
22 #include <G4_Pipe_EIC.C>
23 #include <G4_PlugDoor_EIC.C>
25 #include <G4_TPC_EIC.C>
26 #include <G4_Tracking_EIC.C>
29 #include <G4_hFarFwdBeamLine_EIC.C>
38 #include <phfield/PHFieldConfig.h>
45 R__LOAD_LIBRARY(libg4decayer.so)
46 R__LOAD_LIBRARY(libg4detectors.so)
52 if (
Enable::TPC && Enable::FST && !G4FST::SETTING::FST_TPC)
54 cout <<
"FST setup cannot fit in the TPC" << endl;
59 cout <<
"MVTX and BARREL cannot be enabled together" << endl;
62 else if (
Enable::TPC && Enable::BARREL && !G4BARREL::SETTING::BARRELV6) {
63 cout <<
"Barrel setup cannot fit in the TPC" << endl;
67 if(Enable::FGEM_ORIG && Enable::FST)
69 cout <<
"FST cannot be enabled with 5 FGEM setup" << endl;
73 if(Enable::FGEM_ORIG && Enable::FST)
75 cout <<
"FST cannot be enabled with 5 FGEM setup" << endl;
81 if (Enable::HFARFWD_MAGNETS_IP6 || Enable::HFARFWD_MAGNETS_IP8) hFarFwdBeamLineInit();
84 if (Enable::FGEM || Enable::FGEM_ORIG)
FGEM_Init();
85 if (Enable::FST) FST_Init();
86 if (Enable::BARREL) BarrelInit();
128 double fieldstrength;
130 stringline >> fieldstrength;
131 if (stringline.fail())
154 if (Enable::HFARFWD_MAGNETS_IP6 || Enable::HFARFWD_MAGNETS_IP8) hFarFwdDefineMagnets(g4Reco);
155 if (Enable::HFARFWD_VIRTUAL_DETECTORS_IP6) hFarFwdDefineDetectorsIP6(g4Reco);
156 if (Enable::HFARFWD_VIRTUAL_DETECTORS_IP8) hFarFwdDefineDetectorsIP8(g4Reco);
158 if (Enable::FGEM || Enable::FGEM_ORIG)
FGEMSetup(g4Reco);
159 if (Enable::FST) FSTSetup(g4Reco);
160 if (Enable::BARREL) Barrel(g4Reco, radius);
163 if (Enable::BBC)
Bbc(g4Reco);
268 out->
StripNode(
"G4HIT_CEMC_ELECTRONICS");
276 out->
StripNode(
"G4HIT_ABSORBER_HCALOUT");