source: trunk/MagicSoft/Mars/manalysis/MMcTriggerLvl2.h@ 2494

Last change on this file since 2494 was 2446, checked in by stamerra, 21 years ago
*** empty log message ***
File size: 2.2 KB
Line 
1#ifndef MARS_MMcTriggerLvl2
2#define MARS_MMcTriggerLvl2
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8class MMcTrig;
9
10class MMcEvt;
11
12class MGeomCamMagic;
13
14class MGeomCam;
15class MGeomPix;
16
17class MMcTriggerLvl2 : public MParContainer
18{
19
20 private:
21
22 Int_t fPixels[36][19]; // Array with flag for triggered pixels. 1st idx:pixels in trigger cell; 2nd idx:trigger cell number
23
24 Int_t fFiredPixel[397]; // Array with flag for triggered pixel. idx: pixel id
25
26 static const Int_t gsPixelsInCell[36][19];
27 static const Int_t gsPixelsInLut[3][12];
28
29 Int_t fLutPseudoSize; // number of compact pixels in one lut
30 Int_t fPseudoSize; // Multiplicity of the cluster identified by the L2T
31 Int_t fSizeBiggerCell; // Number of fired pixel in bigger cell
32
33 Int_t fCompactNN; //Number of NN pixels that define a compact pixel
34
35 Int_t fCompactPixel[397]; //Array with flag for compact pixels
36
37 Int_t fCluster_pix[397]; //Array with pixel in cluster
38
39 Double_t fEnergy; // Energy of the shower
40
41 Int_t fTriggerPattern; // x-NN compact trigger pattern;
42
43 MMcTrig *fMcTrig;
44 MGeomCam *fGeomCam;
45
46 Int_t CalcBiggerFiredCell();
47 Int_t CalcBiggerLutPseudoSize();
48 void CalcPseudoSize();
49
50 void SetNewCamera(MGeomCam *geom) {fGeomCam = geom;}
51
52 public:
53
54 MMcTriggerLvl2(const char* name = NULL, const char* title = NULL);
55 ~MMcTriggerLvl2();
56
57
58 virtual void Calc();
59
60 virtual void Print(Option_t *opt="") const;
61
62 void SetLv1(MMcTrig *trig = NULL);
63 void SetPixelFired(Int_t pixel, Int_t fired=1);
64
65 void SetCompactNN(Int_t neighpix) {fCompactNN=neighpix;}
66
67 Int_t GetPseudoSize() const {return fPseudoSize;}
68 Int_t GetLutPseudoSize() const {return fLutPseudoSize;}
69 Int_t GetSizeBiggerCell() const {return fSizeBiggerCell;}
70 Int_t GetCompactNN() const {return fCompactNN;}
71
72 Int_t GetCellNumberFired(int cell);
73 Int_t GetLutCompactPixel(int cell, int lut);
74
75 void CalcCompactPixels(MGeomCam *fCam);
76
77 void GetEnergy(MMcEvt *fMcEvt = NULL);
78
79 Double_t GetEnergy() const {return fEnergy;}
80
81 void CalcTriggerPattern(MGeomCam *fCam);
82 Int_t GetTriggerPattern() const {return fTriggerPattern;}
83
84
85 ClassDef(MMcTriggerLvl2,0) // Container for 2nd Level Trigger selection parameters
86};
87
88#endif
89
90
91
92
93
Note: See TracBrowser for help on using the repository browser.