X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRDcalibDB.h;h=d47f4a0825cacdbfeb0dae70c0f7157922bc4a5d;hb=6aca0ab9c8ebc3600f83150e45f7bc843cbffc48;hp=d8f2d6702ed3b392c410b3766ef17551d463a8f0;hpb=be28462a69497a390358bed198a62e7c8eca7e0c;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRDcalibDB.h b/TRD/AliTRDcalibDB.h index d8f2d6702ed..d47f4a0825c 100644 --- a/TRD/AliTRDcalibDB.h +++ b/TRD/AliTRDcalibDB.h @@ -19,14 +19,23 @@ #include "AliTRDpidUtil.h" #endif +#ifndef ALITRDPIDRESPONSE_H +#include "AliTRDPIDResponse.h" +#endif + +class TString; + class AliCDBEntry; class AliTRDrecoParam; +class AliTRDCalTrkAttach; class AliTRDCalPID; class AliTRDCalMonitoring; class AliTRDCalROC; class AliTRDCalDet; class AliTRDCalSingleChamberStatus; +class AliTRDCalOnlineGainTableROC; + class AliTRDcalibDB : public TObject { public: @@ -61,6 +70,9 @@ class AliTRDcalibDB : public TObject { AliTRDCalROC *GetGainFactorROC(Int_t det); const AliTRDCalDet *GetGainFactorDet(); + Float_t GetOnlineGainFactor(Int_t det, Int_t col, Int_t row); + AliTRDCalOnlineGainTableROC *GetOnlineGainTableROC(Int_t det); + AliTRDCalROC *GetPRFROC(Int_t det); Float_t GetPRFWidth(Int_t det, Int_t col, Int_t row); @@ -69,11 +81,20 @@ class AliTRDcalibDB : public TObject { Float_t GetPRFlo() const { return fPRFlo; }; Float_t GetPRFhi() const { return fPRFhi; }; - Int_t GetNumberOfTimeBins(); + Int_t GetNumberOfTimeBinsDCS(); + void GetFilterType(TString &filterType); + void GetGlobalConfiguration(TString &config); + + Int_t GetOnlineGainTableID(); + + Bool_t HasOnlineFilterPedestal(); + Bool_t HasOnlineFilterGain(); + Bool_t HasOnlineTailCancellation(); Char_t GetPadStatus(Int_t det, Int_t col, Int_t row); AliTRDCalSingleChamberStatus *GetPadStatusROC(Int_t det); AliTRDrecoParam* GetRecoParam(Int_t *eventtype); + AliTRDPIDResponse *GetPIDResponse(AliTRDPIDResponse::ETRDPIDMethod m); Char_t GetChamberStatus(Int_t det); @@ -84,24 +105,26 @@ class AliTRDcalibDB : public TObject { Bool_t IsChamberInstalled(Int_t det); Bool_t IsChamberMasked(Int_t det); + Bool_t IsHalfChamberMasked(Int_t det, Int_t side); const AliTRDCalMonitoring *GetMonitoringObject(); const AliTRDCalPID *GetPIDObject(AliTRDpidUtil::ETRDPIDMethod m); + const AliTRDCalTrkAttach *GetAttachObject(); // Related functions, these depend on calibration data - Int_t PadResponse(Double_t signal, Double_t dist + Int_t PadResponse(Double_t signal, Double_t dist , Int_t layer, Double_t *pad) const; protected: // For caching see also implentation of GetCachedCDBObject in the .cxx file - enum { kCDBCacheSize = 19 }; // Number of cached objects enum { kIDVdriftPad = 0 , kIDVdriftChamber , kIDT0Pad , kIDT0Chamber , kIDGainFactorPad , kIDGainFactorChamber + , kIDOnlineGainFactor , kIDNoiseChamber , kIDNoisePad , kIDPRFWidth @@ -111,10 +134,14 @@ class AliTRDcalibDB : public TObject { , kIDSuperModulePos , kIDPIDNN , kIDPIDLQ + , kIDPIDLQ1D , kIDRecoParam , kIDMonitoringData , kIDChamberStatus - , kIDPadStatus }; // IDs of cached objects + , kIDPadStatus + , kIDDCS + , kIDAttach + , kCDBCacheSize }; // IDs of cached objects const TObject *GetCachedCDBObject(Int_t id); @@ -131,13 +158,17 @@ class AliTRDcalibDB : public TObject { TObject *fCDBCache[kCDBCacheSize]; // Cache for calibration objects. Long64_t fRun; // Run Number - + Float_t *fPRFsmp; //! Sampled pad response Int_t fPRFbin; // Number of bins for the PRF Float_t fPRFlo; // Lower boundary of the PRF Float_t fPRFhi; // Higher boundary of the PRF Float_t fPRFwid; // Bin width of the sampled PRF Int_t fPRFpad; // Distance to next pad in PRF + + AliTRDPIDResponse *fPIDResponse; // TRD PID Response function + + Int_t fOnlineGainTableID; // ID for online gain table private: @@ -146,8 +177,9 @@ class AliTRDcalibDB : public TObject { AliTRDcalibDB &operator=(const AliTRDcalibDB &c); virtual ~AliTRDcalibDB(); - ClassDef(AliTRDcalibDB, 4) // Provides central access to the CDB + ClassDef(AliTRDcalibDB, 7) // Provides central access to the CDB }; #endif +