BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnGemFastDigitize.h
Go to the documentation of this file.
1// -------------------------------------------------------------------------
2// ----- BmnGenFastDigitize header file -----
3// ----- Created 4/07/19 by A. Zinchenko -----
4// -------------------------------------------------------------------------
5
6/** BmnGemFastDigitize.h
7 *@author A.Zinchenko <alexander.zinchenko@jinr.ru>
8 **
9 ** Fast GEM digitizer - reproduces GEM response, produced using
10 ** paramerization of the Garfield++ simulation results.
11 **/
12
13#ifndef BMNGEMFASTDIGITIZE_H
14#define BMNGEMFASTDIGITIZE_H 1
15
16#include "FairTask.h"
17#include "TClonesArray.h"
18
19#include <map>
20#include <set>
21#include <vector>
22
23class CbmStsSensor;
24class TTree;
25class TH2I;
26class TDirectory;
27class TFile;
28
30{
31 public:
32 /** Default constructor **/
34
35 /** Destructor **/
37
38 /** Virtual method Init **/
39 virtual InitStatus Init();
40
41 /** Virtual method Exec **/
42 virtual void Exec(Option_t* opt);
43
44 /** Virtual method Finish **/
45 virtual void Finish();
46
48 std::set<Int_t>& pSet,
49 Double_t* stripSignalF,
50 Double_t* stripSignalB,
51 std::map<Int_t, std::set<Int_t>>& chanPointMapF,
52 std::map<Int_t, std::set<Int_t>>& chanPointMapB);
54
55 private:
56 /** Input arrays **/
59
60 /** Output array of CbmStsHits **/
61 // TClonesArray* fHitArray;
62
63 std::map<Int_t, std::multimap<Float_t, Int_t>> fXYmap[2];
64 std::map<Int_t, Int_t> fStrRef[2];
65 std::map<Int_t, TH2I*> fHistMap;
66 std::map<Int_t, TTree*> fTreeMap;
69 std::vector<Float_t> fvDigis[2];
70 std::vector<Float_t>*fvDig0, *fvDig1;
72
73 Double_t Interp(Double_t* yy, Int_t indx, Int_t ntot, Double_t dx);
75
78
80};
81
82#endif
int Int_t
float Float_t
double Double_t
const char Option_t
#define ClassDef(name, id)
~BmnGemFastDigitize()
Destructor.
BmnGemFastDigitize()
Default constructor.
virtual InitStatus Init()
Virtual method Init.
Int_t FindDataSet(Double_t theX, Double_t theY)
void ProduceHitResponseFast(CbmStsSensor *sensor, std::set< Int_t > &pSet, Double_t *stripSignalF, Double_t *stripSignalB, std::map< Int_t, std::set< Int_t > > &chanPointMapF, std::map< Int_t, std::set< Int_t > > &chanPointMapB)
std::map< Int_t, Int_t > fStrRef[2]
Double_t Interp(Double_t *yy, Int_t indx, Int_t ntot, Double_t dx)
BmnGemFastDigitize & operator=(const BmnGemFastDigitize &)
virtual void Exec(Option_t *opt)
Virtual method Exec.
std::vector< Float_t > * fvDig1
std::vector< Float_t > * fvDig0
TClonesArray * fPoints
Input arrays.
std::vector< Float_t > fvDigis[2]
TClonesArray * fMCTracks
Double_t GetNumberOfClusters(Double_t beta, Double_t gamma, Double_t charge, Double_t p0, Double_t p1)
std::map< Int_t, TTree * > fTreeMap
std::map< Int_t, std::multimap< Float_t, Int_t > > fXYmap[2]
Output array of CbmStsHits.
virtual void Finish()
Virtual method Finish.
BmnGemFastDigitize(const BmnGemFastDigitize &)
std::map< Int_t, TH2I * > fHistMap
double beta(double x, double y)