1 | #ifndef MARS_MHillas
|
---|
2 | #define MARS_MHillas
|
---|
3 |
|
---|
4 | #ifndef MARS_MParContainer
|
---|
5 | #include "MParContainer.h"
|
---|
6 | #endif
|
---|
7 |
|
---|
8 | class TArrayF;
|
---|
9 | class TEllipse;
|
---|
10 |
|
---|
11 | class MGeomCam;
|
---|
12 | class MCerPhotEvt;
|
---|
13 |
|
---|
14 | class MHillas : public MParContainer
|
---|
15 | {
|
---|
16 | private:
|
---|
17 | // for description see MHillas.cc
|
---|
18 | Float_t fLength; // [mm] major axis of ellipse
|
---|
19 | Float_t fWidth; // [mm] minor axis of ellipse
|
---|
20 | Float_t fDelta; // [rad] angle of major axis with x-axis
|
---|
21 | Float_t fSize; // [#CerPhot] sum of content of all pixels (number of Cherenkov photons)
|
---|
22 | Float_t fMeanX; // [mm] x-coordinate of center of ellipse
|
---|
23 | Float_t fMeanY; // [mm] y-coordinate of center of ellipse
|
---|
24 |
|
---|
25 | Short_t fNumUsedPixels; // Number of pixels which survived the image cleaning
|
---|
26 | Short_t fNumCorePixels; // number of core pixels
|
---|
27 |
|
---|
28 | Float_t fSinDelta; //! [1] sin of Delta (to be used in derived classes)
|
---|
29 | Float_t fCosDelta; //! [1] cos of Delta (to be used in derived classes)
|
---|
30 |
|
---|
31 | TEllipse *fEllipse; //! Graphical Object to Display Ellipse
|
---|
32 |
|
---|
33 | protected:
|
---|
34 | //
|
---|
35 | // This is only for calculations in derived classes because
|
---|
36 | // we don't want to read/write this data members
|
---|
37 | //
|
---|
38 | Float_t GetCosDelta() const { return fCosDelta; }
|
---|
39 | Float_t GetSinDelta() const { return fSinDelta; }
|
---|
40 |
|
---|
41 | public:
|
---|
42 | MHillas(const char *name=NULL, const char *title=NULL);
|
---|
43 | ~MHillas();
|
---|
44 |
|
---|
45 | void Reset();
|
---|
46 |
|
---|
47 | virtual Int_t Calc(const MGeomCam &geom, const MCerPhotEvt &pix);
|
---|
48 |
|
---|
49 | virtual void Print(Option_t *opt=NULL) const;
|
---|
50 | virtual void Draw(Option_t *opt=NULL);
|
---|
51 | //virtual void Paint(Option_t *);
|
---|
52 |
|
---|
53 | virtual void Clear(Option_t *opt=NULL);
|
---|
54 |
|
---|
55 | Float_t GetLength() const { return fLength; }
|
---|
56 | Float_t GetWidth() const { return fWidth; }
|
---|
57 | Float_t GetDelta() const { return fDelta; }
|
---|
58 | Float_t GetSize() const { return fSize; }
|
---|
59 | Float_t GetMeanX() const { return fMeanX; }
|
---|
60 | Float_t GetMeanY() const { return fMeanY; }
|
---|
61 |
|
---|
62 | Int_t GetNumUsedPixels() const { return fNumUsedPixels; }
|
---|
63 | Int_t GetNumCorePixels() const { return fNumCorePixels; }
|
---|
64 |
|
---|
65 | virtual void Set(const TArrayF &arr);
|
---|
66 |
|
---|
67 | //virtual void AsciiRead(ifstream &fin);
|
---|
68 | //virtual void AsciiWrite(ofstream &fout) const;
|
---|
69 |
|
---|
70 | ClassDef(MHillas, 2) // Storage Container for Hillas Parameter
|
---|
71 | };
|
---|
72 |
|
---|
73 | #endif
|
---|