source: JEM-EUSO/esaf_cc_at_lal/packages/simulation/detector/electronics/include/LblChipTrackingTrgEngine.hh @ 114

Last change on this file since 114 was 114, checked in by moretto, 11 years ago

actual version of ESAF at CCin2p3

File size: 2.1 KB
Line 
1// ESAF : Euso Simulation and Analysis Framework
2// $Id: LblChipTrackingTrgEngine.hh 2168 2005-10-10 16:28:03Z ejudd $
3//
4//
5#ifndef __LBLCHIPTRACKINGTRGENGINE_HH_
6#define __LBLCHIPTRACKINGTRGENGINE_HH_
7
8#include "euso.hh"
9#include "TriggerEngine.hh"
10#include "LblTrackSegment.hh"
11
12class ChipGtuData;
13
14class LblChipTrackingTrgEngine : public TriggerEngine {
15public:
16    // ctor
17    LblChipTrackingTrgEngine();
18   
19    // dtor
20    virtual ~LblChipTrackingTrgEngine();
21
22    // simulate trigger
23    virtual void Simulate( MacroCellData* );
24
25    EsafConfigClass(Electronics,LblChipTrackingTrgEngine);
26
27private:
28
29    ClassDef(LblChipTrackingTrgEngine,0)
30
31    // Pixel threshold for being used
32    Int_t fPxlthr;
33
34    // Segment finding parameters
35    Int_t fColumn;
36    Int_t fColthr;
37    Int_t fFrmsinseg;
38    Int_t fSegs;
39    Int_t fTrksumthr;
40    bool fWantsumsub;
41
42    // Track and persistency checking parameters
43    Int_t fFrmsinpsum;
44    Int_t fMinpersum;
45
46    // Output control flags
47    bool fVerbose;
48    bool fDebug;
49
50    // Clear everything
51    void Clear(Int_t,Int_t);
52
53    // Find Segments and join them to form Tracks
54    Int_t Find_Tracks(map<Int_t,ChipGtuData*>&,Int_t,Int_t,Int_t);
55
56    // Check these tracks for persistency
57    Int_t Check_Persistency(Int_t,Int_t);
58
59    // Save the tracks in the ROOT output
60    void FillELblTrackTrigger(Int_t,Int_t);
61
62    // Hank's track segments array. Each element holds the total
63    // number of counts from all pixels in that segment
64    Int_t fRawSums[200][12][12];
65
66    // This is the background-subtracted version of fRawSums
67    // If fWantSumSub is false then fSums = fRawSum
68    Int_t fSums[200][12][12];
69
70    // Hank's persistency array. Each element holds the total
71    // number of good tracks that start from a given pixel and a given GTU.
72    Int_t fPers[200][12][12];
73
74    // Eleanor's tracks array. Each element holds the ID number of the
75    // first track, starting from a given pixel, stored in the fTracks vector
76    Int_t fTrks[200][12][12];
77
78    // Vector containing all the track information to be written to ROOT output
79    vector<LblTrackSegment> fTracks;
80
81};
82
83#endif  /* __LBLCHIPTRACKINGTRGENGINE_HH_ */
84
Note: See TracBrowser for help on using the repository browser.