ROOT logo
#ifndef HRich700Calibrater_H
#define HRich700Calibrater_H

#include "hlocation.h"
#include "hreconstructor.h"



class HRich700ThresholdPar;
class HRich700DigiPar;
class HIterator;

class HRich700Calibrater: public HReconstructor {
protected:
  HLocation fRawLoc;          //< current location of raw pixel object (pmt,pixel)
  HLocation fCalLoc;          //< current location of calibrated object (sector, row, column)

  HRich700ThresholdPar* fThresholds; // TRB3 lookup table
  HCategory* fRawCat;                // category for raw event data, input of calibrater
  HCategory* fCalCat;                // category for calibrated event data, output of calibrater
  HCategory* fStartHitCat;            // category for HStart2Hit
  Bool_t     fDoTimeCut;             // do time + tot cut (default kTRUE)
  Bool_t     fUseSTART;              // use STARTHIT(default kTRUE)

  HIterator* iterRaw;                //! iterator over raw data
  // add hit of specified charge to cal category at specified location
  Int_t addCalHitCharge(Int_t sector, Int_t col, Int_t row, Float_t time,Float_t tot);


public:
  HRich700Calibrater(const Text_t* name ="Rich700Calibrater",  const Text_t* title= "Rich700Calibrater");
  virtual ~HRich700Calibrater(void) { if(iterRaw) delete iterRaw;}

  virtual Bool_t init(void);
  virtual Bool_t reinit(void);
  virtual Int_t  execute(void);
  virtual Bool_t finalize(void) { return kTRUE;}

  void setDoTimeCut(Bool_t doCut) {fDoTimeCut = doCut;}
  ClassDef(HRich700Calibrater, 0) // Calibrater : HRich700Raw  -> HRichCal
};

#endif /* !HRich700Calibrater_H */
 hrich700calibrater.h:1
 hrich700calibrater.h:2
 hrich700calibrater.h:3
 hrich700calibrater.h:4
 hrich700calibrater.h:5
 hrich700calibrater.h:6
 hrich700calibrater.h:7
 hrich700calibrater.h:8
 hrich700calibrater.h:9
 hrich700calibrater.h:10
 hrich700calibrater.h:11
 hrich700calibrater.h:12
 hrich700calibrater.h:13
 hrich700calibrater.h:14
 hrich700calibrater.h:15
 hrich700calibrater.h:16
 hrich700calibrater.h:17
 hrich700calibrater.h:18
 hrich700calibrater.h:19
 hrich700calibrater.h:20
 hrich700calibrater.h:21
 hrich700calibrater.h:22
 hrich700calibrater.h:23
 hrich700calibrater.h:24
 hrich700calibrater.h:25
 hrich700calibrater.h:26
 hrich700calibrater.h:27
 hrich700calibrater.h:28
 hrich700calibrater.h:29
 hrich700calibrater.h:30
 hrich700calibrater.h:31
 hrich700calibrater.h:32
 hrich700calibrater.h:33
 hrich700calibrater.h:34
 hrich700calibrater.h:35
 hrich700calibrater.h:36
 hrich700calibrater.h:37
 hrich700calibrater.h:38
 hrich700calibrater.h:39
 hrich700calibrater.h:40
 hrich700calibrater.h:41
 hrich700calibrater.h:42
 hrich700calibrater.h:43