source: trunk/MagicSoft/Mars/mimage/MImgCleanStd.h@ 5732

Last change on this file since 5732 was 5690, checked in by tbretz, 20 years ago
*** empty log message ***
File size: 2.4 KB
Line 
1#ifndef MARS_MImgCleanStd
2#define MARS_MImgCleanStd
3
4#ifndef MARS_MGTask
5#include "MGTask.h"
6#endif
7
8class MGeomCam;
9class MSigmabar;
10class MCerPhotPix;
11class MCerPhotEvt;
12class MPedPhotCam;
13class MArrivalTime;
14class MCameraData;
15
16class MGGroupFrame;
17
18class MImgCleanStd : public MGTask
19{
20public:
21 typedef enum {
22 kStandard,
23 kScaled,
24 kDemocratic,
25 kProbability,
26 kAbsolute
27 } CleaningMethod_t;
28
29private:
30 static const TString gsNamePedPhotCam; // default name of the 'MPedPhotCam' container
31 static const TString gsNameGeomCam; // default name of the 'MGeomCam' container
32 static const TString gsNameCerPhotEvt; // default name of the 'MCerPhotEvt' container
33
34 const MGeomCam *fCam; //!
35 MCerPhotEvt *fEvt; //!
36 MPedPhotCam *fPed; //!
37 MArrivalTime *fTime; //!
38 MCameraData *fData; //!
39
40 CleaningMethod_t fCleaningMethod;
41
42 Float_t fCleanLvl1;
43 Float_t fCleanLvl2;
44
45 UShort_t fCleanRings;
46
47 TString fNamePedPhotCam; // name of the 'MPedPhotCam' container
48 TString fNameGeomCam; // name of the 'MGeomCam' container
49 TString fNameCerPhotEvt; // name of the 'MCerPhotEvt' container
50
51
52 void CreateGuiElements(MGGroupFrame *f);
53 void StreamPrimitive(ofstream &out) const;
54 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print);
55
56 void CleanStep3b(MCerPhotPix &pix);
57 void CleanStep4(UShort_t r, MCerPhotPix &pix);
58
59 void CleanStep1();
60 void CleanStep2();
61 void CleanStep3();
62
63 Int_t PreProcess(MParList *pList);
64 Int_t Process();
65
66public:
67 MImgCleanStd(const Float_t lvl1=3.0, const Float_t lvl2=2.5,
68 const char *name=NULL, const char *title=NULL);
69 void Print(Option_t *o="") const;
70
71 Float_t GetCleanLvl1() const { return fCleanLvl1; }
72 Float_t GetCleanLvl2() const { return fCleanLvl2; }
73 UShort_t GetCleanRings() const { return fCleanRings;}
74
75 void SetCleanRings(UShort_t r) { if(r==0) r=1; fCleanRings=r; }
76 void SetMethod(CleaningMethod_t m) { fCleaningMethod = m; }
77
78 Bool_t ProcessMessage(Int_t msg, Int_t submsg, Long_t param1, Long_t param2);
79
80 void SetNamePedPhotCam(const char *name) { fNamePedPhotCam = name; }
81 void SetNameCerPhotEvt(const char *name) { fNameCerPhotEvt = name; }
82 void SetNameGeomCam(const char *name) { fNameGeomCam = name; }
83
84 ClassDef(MImgCleanStd, 3) // task doing the image cleaning
85};
86
87#endif
Note: See TracBrowser for help on using the repository browser.