// -*- mode: c++ -*- // // $Id: BrBbGainCalModule.h,v 1.4 2002/02/14 21:40:44 videbaek Exp $ // $Author: videbaek $ // $Date: 2002/02/14 21:40:44 $ // $Copyright: (C) 2001 BRAHMS Collaboration // #ifndef BRAT_BrBbGainCalModule #define BRAT_BrBbGainCalModule #ifndef BRAT_BrBbCalModule #include "BrBbCalModule.h" #endif #ifndef BRAT_BrEventNode #include "BrEventNode.h" #endif #ifndef ROOT_TProfile #include "TProfile.h" #endif #ifndef ROOT_TList #include "TList.h" #endif #ifndef BRAT_BrBbCalibration #include "BrBbCalibration.h" #endif #ifndef BRAT_BrDetectorParamsBB #include "BrDetectorParamsBB.h" #endif #ifndef ROOT_TString #include "TString.h" #endif class TH2F; class BrBbGainCalModule : public BrBbCalModule { private: virtual void SaveAscii(); virtual void ReadAscii(); void NormalizeHisto(TH1F*, Int_t); public: BrBbGainCalModule(); BrBbGainCalModule(const Char_t* name, const Char_t* title); virtual ~BrBbGainCalModule(); void SetDefaultParameters(); virtual void DefineHistograms(); virtual void Init(); virtual void Begin(); virtual void Event(BrEventNode* inNode, BrEventNode* outNode); virtual void End(); virtual void Finish(); virtual void Print(Option_t* option="B") const; // *MENU* void SetNoPedWidth(Int_t w = 10) { fNoPedWidth = w; } void SetFitWindow(Float_t w = 100) { fFitWindow = w; } private: TH1F** fRawAdc; // histo for calibration TH1F* hGain0; // Histogram of fitted gain values TH1F* hGain0Width; // Histogram of fitted width. TH2F* hCalAdcVsTube; // Compact summary histogram. // parameters Float_t fNoPedWidth; // for hit selection Float_t fFitWindow; // fit at max +/- fFitWindow ClassDef(BrBbGainCalModule, 0) // Beam-Beam counters Adc Gain Module }; #endif //____________________________________________________________________ // // $Log: BrBbGainCalModule.h,v $ // Revision 1.4 2002/02/14 21:40:44 videbaek // Add some more diagnostic histograms // // Revision 1.3 2001/10/15 00:35:08 ouerdane // Updated all Beam-Beam counter calibration modules (like I did for the TOF // some weeks ago): // // Common changes: // added methods Set[Save,Commit,Load]Ascii(Bool_t) // removed methods Set[ReadFrom,LoadFrom,SaveTo]File // // BrBbGainCalModule: // cleaned up a lot the code, added diagnostic histograms showing calibrated // ADC after the 1st MIP peak was found. // Still at a stage where the 1st MIP peak is the only one to be checked. // Later on, will add algorithm to find other peaks. // // Added BrBbSlewingCalModule in Makefile.am, etc // The fit function introduced is dT = a + b/sqrt(dE) + c/dE (where dE = ADC/Gain0) // // Revision 1.2 2001/09/24 14:01:14 videbaek // fix last problems from yesterday // // Revision 1.1 2001/09/24 09:27:28 ouerdane // Added BrBbGainCalModule with right file names (Flemming's mistake) // // Revision 1.1 2001/09/23 21:02:39 videbaek // Forgot to include - thanks to Djamel //