REST-for-Physics  v2.3
Rare Event Searches ToolKit for Physics
TRestGeant4BlobAnalysisProcess.h
1 
12 #ifndef RestCore_TRestGeant4BlobAnalysisProcess
13 #define RestCore_TRestGeant4BlobAnalysisProcess
14 
15 #include <TRestGeant4Event.h>
16 #include <TRestGeant4Metadata.h>
17 
18 #include "TRestEventProcess.h"
19 
21  private:
22 #ifndef __CINT__
23  TRestGeant4Event* fG4Event;
24  TRestGeant4Metadata* fG4Metadata;
25 
26  std::vector<std::string> fQ1_Observables;
27  std::vector<double> fQ1_Radius;
28 
29  std::vector<std::string> fQ2_Observables;
30  std::vector<double> fQ2_Radius;
31 #endif
32 
33  void InitFromConfigFile() override;
34 
35  void Initialize() override;
36 
37  void LoadDefaultConfig();
38 
39  protected:
40  // add here the members of your event process
41 
42  public:
43  RESTValue GetInputEvent() const override { return fG4Event; }
44  RESTValue GetOutputEvent() const override { return fG4Event; }
45 
46  void InitProcess() override;
47  TRestEvent* ProcessEvent(TRestEvent* inputEvent) override;
48  void EndProcess() override;
49 
50  void LoadConfig(const std::string& configFilename, const std::string& name = "");
51 
52  void PrintMetadata() override {
54 
55  EndPrintProcess();
56  }
57 
58  const char* GetProcessName() const override { return "findG4BlobAnalysis"; }
59 
60  // Constructor
62  TRestGeant4BlobAnalysisProcess(const char* configFilename);
63  // Destructor
65 
66  ClassDefOverride(TRestGeant4BlobAnalysisProcess, 1); // Template for a REST "event process" class
67  // inherited from TRestEventProcess
68 };
69 #endif
A base class for any REST event process.
void BeginPrintProcess()
[name, cut range]
A base class for any REST event.
Definition: TRestEvent.h:38
void Initialize() override
Making default settings.
RESTValue GetInputEvent() const override
Get pointer to input event. Must be implemented in the derived class.
void InitProcess() override
To be executed at the beginning of the run (outside event loop)
TRestEvent * ProcessEvent(TRestEvent *inputEvent) override
Process one event.
RESTValue GetOutputEvent() const override
Get pointer to output event. Must be implemented in the derived class.
void EndProcess() override
To be executed at the end of the run (outside event loop)
void PrintMetadata() override
Implemented it in the derived metadata class to print out specific metadata information.
void InitFromConfigFile() override
To make settings from rml file. This method must be implemented in the derived class.
An event class to store geant4 generated event information.
The main class to store the Geant4 simulation conditions that will be used by restG4.