// -*- mode: c++ -*- // // $Id: BrTpcPadStatusCalModule.h,v 1.3 2002/08/19 09:47:30 pchristi Exp $ // $Author: pchristi $ // $Date: 2002/08/19 09:47:30 $ // $Copyright: (C) 2001 BRAHMS Collaboration // #ifndef BRAT_BrTpcPadStatusCalModule #define BRAT_BrTpcPadStatusCalModule #ifndef BRAT_BrTpcCalModule #include "BrTpcCalModule.h" #endif #ifndef BRAT_BrEventNode #include "BrEventNode.h" #endif #ifndef BRAT_BrDataTable #include "BrDataTable.h" #endif #ifndef BRAT_TTree #include "TTree.h" #endif #ifndef ROOT_TProfile #include "TProfile.h" #endif #ifndef ROOT_TH1 #include "TH1.h" #endif class BrTpcPadStatusCalModule : public BrTpcCalModule { private: Float_t fColdAdc; // Cut that defines when a pad is cold Float_t fHotAdc; // Cut that defines when a pad is cold Int_t fPadEdgeCut; // if 3 means set pad 0, 1, 2 and n-3, n-2, n-1 // to bad for each row Int_t fTimeLowCut; // timebin >= fTimeLowCut Int_t fTimeHighCut; // timebin <= fTimeHighCut // histograms TProfile** hAverageAdc; TH1F** hAverageAdcHelp; TProfile** hMaxAdc; TH1F** hMaxAdcHelp; TH1F* hAverageAdcVsTimeHelp; TProfile* hAverageAdcVsTime; protected: virtual void ReadAscii(); virtual void SaveAscii(); public: BrTpcPadStatusCalModule(); BrTpcPadStatusCalModule(const Char_t* name, const Char_t* title); virtual ~BrTpcPadStatusCalModule () {} virtual void DefineHistograms(); virtual void Init(); virtual void Begin(); virtual void Event(BrEventNode* inNode, BrEventNode* outNode); virtual void Finish(); virtual void Print(Option_t* option="B") const; // *MENU* void SetColdAdc(Float_t value = 0.2) {fColdAdc = value;} void SetHotAdc(Float_t value = 3) {fHotAdc = value;} void SetPadEdgeCut(Int_t value = 4) {fPadEdgeCut = value;} void SetTimeLowCut(Int_t x = 1) { fTimeLowCut = x; } void SetTimeHighCut(Int_t x = 200) { fTimeHighCut = x; } ClassDef(BrTpcPadStatusCalModule,0) // Tof ADC gain cal module }; #endif //____________________________________________________________________ // // $Log: BrTpcPadStatusCalModule.h,v $ // Revision 1.3 2002/08/19 09:47:30 pchristi // Added old changes to calibration modules. // // Revision 1.2 2001/11/02 13:38:54 pchristi // Added new module for calibrating drift velocities using the fibres behind // T2 and in front of T1. // Updated old modules with small changes. // // Revision 1.1 2001/10/12 11:08:50 pchristi // Added new directory tpc. Added the first calibration modules. They // have all been tested and found to work. The algorithms might not be // optimal, but are at least fully automatic and to some extent // documented. CVS: // ---------------------------------------------------------------------- // BrTpcCalModule.cxx BrTpcCalModule.h CVS: BrTpcHitWidthCalModule.cxx // BrTpcHitWidthCalModule.h CVS: BrTpcPadStatusCalModule.cxx // BrTpcPadStatusCalModule.h CVS: BrTpcTimeCalModule.cxx // BrTpcTimeCalModule.h Include.h CVS: LinkDef.h Makefile.am CVS: // ---------------------------------------------------------------------- // // Revision 1.2 2001/10/11 09:13:52 pchristi // Almost finished Pad status // // Revision 1.1 2001/10/10 21:12:28 pchristi // Added pad status module // // Revision 1.1 2001/10/10 16:52:16 pchristi // New module ready for testing // // Revision 1.3 2001/10/10 15:49:55 pchristi // Many updates and a new module //