Ignore:
Timestamp:
09/14/04 00:11:10 (20 years ago)
Author:
gaug
Message:
*** empty log message ***
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mhcalib/MHCalibrationChargeBlindCam.h

    r4970 r4986  
    22#define MARS_MHCalibrationChargeBlindCam
    33
    4 #ifndef MARS_MH
    5 #include "MH.h"
    6 #endif
    7 #ifndef MARS_MHCalibrationChargeBlindPix
    8 #include "MHCalibrationChargeBlindPix.h"
     4#ifndef MARS_MHCalibrationCam
     5#include "MHCalibrationCam.h"
    96#endif
    107
    11 class TObjArray;
    12 class MRawRunHeader;
    13 class MExtractedSignalBlindPixel;
    14 class MCalibrationChargeBlindCam;
     8class MRawEvtData;
     9class MCalibrationBlindPix;
    1510class MHCalibrationChargeBlindPix;
    16 class MHCalibrationChargeBlindCam : public MH
     11class MHCalibrationChargeBlindCam : public MHCalibrationCam
    1712{
    1813private:
    1914
    20   MExtractedSignalBlindPixel *fSignal;     //!  Extracted Signal class
    21   MCalibrationChargeBlindCam *fCam;        //!  Calibration Cam with the results
    22   MRawRunHeader              *fRunHeader;  //!  Run Header
     15  static const Int_t   fgNbins;        //! Default for fNBins new style blind pixel (now set to:  128   )
     16  static const Axis_t  fgFirst;        //! Default for fFirst new style blind pixel (now set to: - 0.5 )
     17  static const Axis_t  fgLast;         //! Default for fLast  new style blind pixel (now set to: 511.5 )
     18
     19  static const Axis_t  fgSPheCut;      //! Default for fSinglePheCut new style blind pixel (now set to: 20)
    2320 
    24   TObjArray *fBlindPixelsArray;            // Array of calibration pixels, one per pixel
     21  static const TString gsHistName;     //! Default Histogram names
     22  static const TString gsHistTitle;    //! Default Histogram titles
     23  static const TString gsHistXTitle;   //! Default Histogram x-axis titles
     24  static const TString gsHistYTitle;   //! Default Histogram y-axis titles
     25 
     26  Axis_t fSPheCut;                    // Signal value upon which event considered as single-phe
     27 
     28  MRawEvtData *fRawEvt;                 //!  Raw event data
    2529
    26   MHCalibrationChargeBlindPix::FitFunc_t fFitFunc;
     30public:
     31
     32  enum FitFunc_t { kEPoisson4, kEPoisson5,
     33                   kEPoisson6, kEPoisson7,
     34                   kEPolya, kEMichele }; // Possible fit functions types (see MHCalibrationChargeBlindPix)
     35 
     36  static const FitFunc_t fgFitFunc = kEPoisson4;    //! Default for fFitFunc
     37
     38private:
     39
     40  FitFunc_t fFitFunc;                 // The actual fit function type
     41 
     42  Bool_t SetupHists   (const MParList *pList );
     43  Bool_t ReInitHists  (      MParList *pList );
     44  Bool_t FillHists    (const MParContainer *par, const Stat_t w=1 );
     45  Bool_t FinalizeHists();
     46
     47  void   FitBlindPixel( MHCalibrationChargeBlindPix &hist, MCalibrationBlindPix &pix);
     48
     49  Int_t ReadEnv        ( const TEnv &env, TString prefix, Bool_t print); 
    2750 
    2851public:
    2952
    3053  MHCalibrationChargeBlindCam(const char *name=NULL, const char *title=NULL);
    31   ~MHCalibrationChargeBlindCam();
    32 
    33   Bool_t SetupFill( const MParList *pList);
    34   Bool_t ReInit   (       MParList *pList);
    35   Bool_t Fill     ( const MParContainer *par, const Stat_t w=1);
    36   Bool_t Finalize ( );
    3754
    3855  // Clone
     
    4057 
    4158  // Draw
    42   void   Draw(Option_t *opt="");
    43  
    44   const Int_t GetSize() const  { return fBlindPixelsArray->GetSize(); }
    45  
    46         MHCalibrationChargeBlindPix &operator[] (UInt_t i);
    47   const MHCalibrationChargeBlindPix &operator[] (UInt_t i)  const;
    48 
    49   void   SetFitFunc(const MHCalibrationChargeBlindPix::FitFunc_t func)  { fFitFunc = func;  } 
     59  void  Draw(Option_t *opt="");
     60  void  SetFitFunc( const FitFunc_t func=fgFitFunc)  { fFitFunc = func;  }
     61  void  SetSPheCut( const Axis_t a=fgSPheCut )  { fSPheCut = a;  }   
    5062 
    5163  ClassDef(MHCalibrationChargeBlindCam, 1)      // Histogram class for Blind Pixel Calibration
Note: See TracChangeset for help on using the changeset viewer.