BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnFillDstTask.h
Go to the documentation of this file.
1/********************************************************************************
2 * BmnFillDstTask.h *
3 * BM@N Fill DST Task class declaration *
4 * Add necessary data and event header to the DST file after reconstruction *
5 *******************************************************************************/
6
7#ifndef BMNFILLDSTTASK_H
8#define BMNFILLDSTTASK_H
9
10#include "BmnEventHeader.h"
11#include "BmnMCInfoDst.h"
12#include "BmnTask.h"
13#include "CbmVertex.h"
14#include "DstEventHeader.h"
15#include "DstRunHeader.h"
16#include "FairMCEventHeader.h"
17#include "TClonesArray.h"
18
19#include <map>
20
21class BmnFillDstTask : public BmnTask
22{
23 public:
24 /** Default constructor **/
26
27 /** Constructor with start event and event number to be processed, and autodefinition whether experimental data are
28 * used **/
29 BmnFillDstTask(Long64_t nStartEvent, Long64_t nEvents);
30
31 /** Constructor with start event and event number to be processed, experimental data flag, period and run numbers
32 * **/
33 BmnFillDstTask(Long64_t nStartEvent,
34 Long64_t nEvents,
35 Bool_t isExp,
36 Int_t period_number = -1,
37 Int_t run_number = -1);
38
39 /** Destructor **/
41
42 /** Initialization of task at the beginning **/
43 virtual InitStatus Init();
44
45 /** ReInitialization of task when the runID/file changes **/
46 virtual InitStatus ReInit();
47
48 /** Executed for each event **/
49 virtual void Exec(Option_t* opt);
50
51 /** Load the parameter container from the runtime database **/
52 virtual void SetParContainers();
53
54 /** Finish task called at the end **/
55 virtual void Finish();
56
57 /** Setting period-number information to fill RunHeader **/
58 void SetRunNumber(Int_t period_number, Int_t run_number)
59 {
60 fPeriodNumber = period_number;
61 fRunNumber = run_number;
62 }
64
65 /** Fill map with weight-charge of possible particles **/
66 void InitParticleInfo();
67
69 {
72 };
73
74 private:
76 /** period number **/
78 /** run number **/
80
81 /** Input MCEventHeader from Simulation File **/
83 /** Input Monte-Carlo tracks from Simulation File **/
85 /** Output MC Information for physics analysis **/
87 /** Input BmnEventHeader from Experimental Digit File **/
89 /** Output DstEventHeader prepared in FairRunAna **/
91 /** Output BmnRunHeader **/
93 /** start event from which the processing is started **/
95 /** event count to be processed **/
97 /** current event being processed for progress bar **/
99 /** pointer to primary vertex in the current event **/
101 /** pointer to global tracks in the current event **/
103
104 /** z calibration parameters: **/
110
111 /*For ADC, charge calculation*/
113
114 /** map with particle names and corresponding weight-charge pairs **/
115 map<TString, stParticleInfo> mapParticleInfo;
116
119
120 /** Reset variables between events **/
121 void Reset();
122
123 void applyZCalibration();
124 /** set headers with autodefinition whether experimental or simulation data are used **/
125 bool autoSetHeaders();
126
128};
129
130#endif
bool Bool_t
int Int_t
double Double_t
long long Long64_t
const char Option_t
#define ClassDef(name, id)
virtual void SetParContainers()
Load the parameter container from the runtime database.
virtual void Finish()
Finish task called at the end.
TClonesArray * fBC4
TClonesArray * fBC2
DstRunHeader * fRunHeader
Output BmnRunHeader.
void InitParticleInfo()
Fill map with weight-charge of possible particles.
Int_t fRunNumber
run number
Long64_t fNStartEvent
start event from which the processing is started
void Reset()
Reset variables between events.
TClonesArray * fMCTracks
Input Monte-Carlo tracks from Simulation File.
Long64_t fNEvents
event count to be processed
BmnEventHeader * fEventHeader
Input BmnEventHeader from Experimental Digit File.
TClonesArray * fT0
virtual InitStatus Init()
Initialization of task at the beginning.
void SetRunNumber(Int_t period_number, Int_t run_number)
Setting period-number information to fill RunHeader.
FairMCEventHeader * fMCEventHeader
Input MCEventHeader from Simulation File.
void DoZCalibration(Bool_t cal)
TClonesArray * fBC1
DstEventHeader * fDstHeader
Output DstEventHeader prepared in FairRunAna.
CbmVertex * fPrimaryVertex
pointer to primary vertex in the current event
bool autoSetHeaders()
set headers with autodefinition whether experimental or simulation data are used
virtual void Exec(Option_t *opt)
Executed for each event.
Long64_t fIEvent
current event being processed for progress bar
BmnFillDstTask(const BmnFillDstTask &)=delete
BmnFillDstTask operator=(const BmnFillDstTask &)=delete
Int_t fPeriodNumber
period number
TClonesArray * fGlobalTracks
pointer to global tracks in the current event
Double_t fZCalib1
z calibration parameters:
TClonesArray * fBC3
BmnFillDstTask()
Default constructor.
BmnMCInfoDst * fMCInfoDst
Output MC Information for physics analysis.
map< TString, stParticleInfo > mapParticleInfo
map with particle names and corresponding weight-charge pairs
virtual InitStatus ReInit()
ReInitialization of task when the runID/file changes.
~BmnFillDstTask()
Destructor.
BmnTask()
Default constructor.
Definition BmnTask.cxx:3
CbmVertex.h.
Definition CbmVertex.h:21