/
G4_QA_EIC.C
executable file
·72 lines (65 loc) · 2 KB
/
G4_QA_EIC.C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
#ifndef MACRO_G4QAEIC_C
#define MACRO_G4QAEIC_C
#include <GlobalVariables.C>
#include <G4_CEmc_EIC.C>
#include <G4_EEMC.C>
#include <G4_FEMC_EIC.C>
#include <G4_FHCAL.C>
#include <G4_HcalIn_ref.C>
#include <G4_HcalOut_ref.C>
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wundefined-internal"
#include <eicqa_modules/QAExample.h>
#pragma GCC diagnostic pop
#include <eicqa_modules/QAG4SimulationEicCalorimeter.h>
#include <eicqa_modules/QAG4SimulationEicCalorimeterSum.h>
R__LOAD_LIBRARY(libeicqa_modules.so)
void QAInit()
{
Fun4AllServer *se = Fun4AllServer::instance();
if (Enable::CEMC)
{
se->registerSubsystem(new QAG4SimulationEicCalorimeter("CEMC"));
}
if (Enable::HCALIN)
{
se->registerSubsystem(new QAG4SimulationEicCalorimeter("HCALIN"));
}
if (Enable::HCALOUT)
{
se->registerSubsystem(new QAG4SimulationEicCalorimeter("HCALOUT"));
}
if (Enable::FEMC)
{
se->registerSubsystem(new QAG4SimulationEicCalorimeter("FEMC", QAG4SimulationEicCalorimeter::kProcessG4Hit));
}
if (Enable::FHCAL)
{
se->registerSubsystem(new QAG4SimulationEicCalorimeter("FHCAL", QAG4SimulationEicCalorimeter::kProcessG4Hit));
}
if (Enable::EEMC)
{
se->registerSubsystem(new QAG4SimulationEicCalorimeter("EEMC", QAG4SimulationEicCalorimeter::kProcessG4Hit));
}
if (Enable::CEMC && Enable::HCALIN && Enable::HCALOUT)
{
// The QA modules also deals with tracking which we do not apply right now
// so we need to call the module with kProcessCluster
QAG4SimulationEicCalorimeterSum *calo_qa = nullptr;
if (Enable::TRACKING)
{
calo_qa = new QAG4SimulationEicCalorimeterSum();
calo_qa->set_track_nodename(TRACKING::TrackNodeName);
}
else
{
calo_qa = new QAG4SimulationEicCalorimeterSum(QAG4SimulationEicCalorimeterSum::kProcessCluster);
}
// calo_qa->Verbosity(10);
se->registerSubsystem(calo_qa);
}
QAExample *qa = new QAExample();
//qa->Verbosity(2);
se->registerSubsystem(qa);
}
#endif // MACRO_G4QAEIC_C