| Line |   | 
|---|
| 1 | #ifndef MARS_MPadding
 | 
|---|
| 2 | #define MARS_MPadding
 | 
|---|
| 3 | 
 | 
|---|
| 4 | #ifndef MARS_MTask
 | 
|---|
| 5 | #include "MTask.h"
 | 
|---|
| 6 | #endif
 | 
|---|
| 7 | 
 | 
|---|
| 8 | class TH1D;
 | 
|---|
| 9 | class TH2D;
 | 
|---|
| 10 | class MGeomCam;
 | 
|---|
| 11 | class MCerPhotEvt;
 | 
|---|
| 12 | class MPedPhotCam;
 | 
|---|
| 13 | class MMcEvt;
 | 
|---|
| 14 | class MSigmabar;
 | 
|---|
| 15 | class MParList;
 | 
|---|
| 16 | 
 | 
|---|
| 17 | class MPadding : public MTask
 | 
|---|
| 18 | {
 | 
|---|
| 19 | private:
 | 
|---|
| 20 |     MGeomCam     *fCam;
 | 
|---|
| 21 |     MCerPhotEvt  *fEvt;
 | 
|---|
| 22 |     MSigmabar    *fSigmabar;
 | 
|---|
| 23 |     MMcEvt       *fMcEvt;
 | 
|---|
| 24 |     MPedPhotCam  *fPed;
 | 
|---|
| 25 | 
 | 
|---|
| 26 |     Int_t     fRunType;
 | 
|---|
| 27 |     Int_t     fGroup;
 | 
|---|
| 28 | 
 | 
|---|
| 29 |     TString   fDatabaseFilename; // data file used for generating fHSigmabarMax histogram
 | 
|---|
| 30 |     Double_t  fFixedSigmabar;    // fixed sigmabar value
 | 
|---|
| 31 | 
 | 
|---|
| 32 |     Bool_t    fHSigMaxAllocated; // flag whether MPadding allocated it
 | 
|---|
| 33 |     TH1D     *fHSigmabarMax;     // histogram (sigmabarmax vs. Theta)
 | 
|---|
| 34 |     TH2D     *fHSigmaTheta;      // 2D-histogram (sigmabar vs. Theta)
 | 
|---|
| 35 |     TH2D     *fHSigmaPedestal;   //-> for testing: plot of padded vs orig. pedestal sigmas
 | 
|---|
| 36 |     TH2D     *fHPhotons;         //-> for testing: no.of photons after versus before padding
 | 
|---|
| 37 |     TH2D     *fHSigmaOld;        //-> histogram (sigma vs. Theta) before padding
 | 
|---|
| 38 |     TH2D     *fHSigmaNew;        //-> histogram (sigma vs. Theta) after padding
 | 
|---|
| 39 |     TH1D     *fHNSB;             //-> histogram of added NSB
 | 
|---|
| 40 | 
 | 
|---|
| 41 |     Double_t CalcOtherSig(const Double_t mySig, const Double_t theta) const;
 | 
|---|
| 42 |     Bool_t   Padding(const Double_t quadDiff, const Double_t theta);
 | 
|---|
| 43 | 
 | 
|---|
| 44 |     Int_t PreProcess(MParList *pList);
 | 
|---|
| 45 |     Int_t Process();
 | 
|---|
| 46 |     Int_t PostProcess();
 | 
|---|
| 47 | 
 | 
|---|
| 48 | public:
 | 
|---|
| 49 |     MPadding(const char *name=NULL, const char *title=NULL);
 | 
|---|
| 50 |     ~MPadding();
 | 
|---|
| 51 | 
 | 
|---|
| 52 |     void SetRunType(Int_t runtype) { fRunType =  runtype; }
 | 
|---|
| 53 |     void SetGroup(Int_t group)     { fGroup   =  group; }
 | 
|---|
| 54 | 
 | 
|---|
| 55 |     Bool_t SetDefiningHistogram(TH1D *hist);
 | 
|---|
| 56 |     void SetDatabaseFile(char *filename) { fDatabaseFilename = filename; }
 | 
|---|
| 57 | 
 | 
|---|
| 58 |     Bool_t SetSigmaThetaHist(TH2D *histo);
 | 
|---|
| 59 | 
 | 
|---|
| 60 |     void SetTargetLevel(Double_t sigmabar);
 | 
|---|
| 61 | 
 | 
|---|
| 62 |     ClassDef(MPadding, 0)   // task for the padding
 | 
|---|
| 63 | }; 
 | 
|---|
| 64 | 
 | 
|---|
| 65 | #endif
 | 
|---|
| 66 | 
 | 
|---|
| 67 | 
 | 
|---|
| 68 | 
 | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.