CbmRoot
Loading...
Searching...
No Matches
CbmBuildEventsSimple.h
Go to the documentation of this file.
1/* Copyright (C) 2014-2017 Institute for Theoretical and Experimental Physics named by A.I. Alikhanov of National Research Centre "Kurchatov Institute" (ITEP) in Moscow, Russia, Moscow
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Volker Friese, Mikhail Prokudin [committer] */
4
9#ifndef CBMBUILDEVENTSSIMPLE_H
10#define CBMBUILDEVENTSSIMPLE_H
11
12
13#include <FairTask.h>
14
15class TClonesArray;
16
27class CbmBuildEventsSimple : public FairTask {
28 public:
31
33 virtual ~CbmBuildEventsSimple();
34
36 virtual void Exec(Option_t* opt);
37
38 // Setters. Time in [ns], events in counts :) Only STS information is used.
39 void SetWindDur(Double_t winddur = 5) { fWindDur = winddur; }
40 void SetMinusDeltaT(Double_t minusdeltat = 10) { fMinusDeltaT = minusdeltat; }
41 void SetPlusDeltaT(Double_t plusdeltat = 15) { fPlusDeltaT = plusdeltat; }
42 void SetMinHitStations(Int_t minhitstations = 8) { fMinHitStations = minhitstations; }
43 void SetMinDigis(Int_t mindigis = 2000) { fMinDigis = mindigis; }
44 void SetDeadT(Double_t deadt = 10) { fDeadT = deadt; }
45
46
47 private:
48 TClonesArray* fStsDigis;
49 TClonesArray* fEvents;
50 Int_t fSliceN; // Number of current time slice
51
52 Int_t fEv; // Number of current event
53 Int_t fNDigis; // Number of digis in current time window
54 Int_t fSN; // N of start of time window
55 Double_t fST; // Time of start of time window
56 Int_t fNStsDigis[16]; // Number of STS digis per station
57 Double_t fWindDur; // Duration of time window [ns]
58 Double_t fMinusDeltaT; // [ns] before start of time window for event construction
59 Double_t fPlusDeltaT; // [ns] after end of time window for event construction
60 Double_t fDeadT; // [ns] after last accepted digi of blindless
61 Int_t fMinHitStations; // Minimum number of hit STS stations for event formation
62 Int_t fMinDigis; // Minimum number of digis in time window for event formation
63
65 virtual InitStatus Init();
66
68 void FillEvent(Int_t st, Int_t end);
69
72
74};
75
76#endif /* CBMBUILDEVENTSSIMPLE_H */
void FillEvent(Int_t st, Int_t end)
CbmBuildEventsSimple & operator=(const CbmBuildEventsSimple &)
void SetDeadT(Double_t deadt=10)
virtual InitStatus Init()
CbmBuildEventsSimple(const CbmBuildEventsSimple &)
void SetWindDur(Double_t winddur=5)
ClassDef(CbmBuildEventsSimple, 1)
void SetMinusDeltaT(Double_t minusdeltat=10)
virtual void Exec(Option_t *opt)
void SetMinDigis(Int_t mindigis=2000)
TClonesArray * fEvents
Output array (class CbmEvent)
TClonesArray * fStsDigis
Input array (class CbmStsDigi)
void SetMinHitStations(Int_t minhitstations=8)
void SetPlusDeltaT(Double_t plusdeltat=15)