X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRDcalibDB.h;h=d47f4a0825cacdbfeb0dae70c0f7157922bc4a5d;hb=6aca0ab9c8ebc3600f83150e45f7bc843cbffc48;hp=aa099611c4f7a5dca0321c8da5a0b3c1ccf30887;hpb=f1dcad37e48c48e223d3d5d607d9932307e2ff12;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRDcalibDB.h b/TRD/AliTRDcalibDB.h index aa099611c4f..d47f4a0825c 100644 --- a/TRD/AliTRDcalibDB.h +++ b/TRD/AliTRDcalibDB.h @@ -19,15 +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 TString; +class AliTRDCalOnlineGainTableROC; + class AliTRDcalibDB : public TObject { public: @@ -62,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); @@ -72,10 +83,18 @@ class AliTRDcalibDB : public TObject { 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); @@ -86,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 = 20 }; // Number of cached objects enum { kIDVdriftPad = 0 , kIDVdriftChamber , kIDT0Pad , kIDT0Chamber , kIDGainFactorPad , kIDGainFactorChamber + , kIDOnlineGainFactor , kIDNoiseChamber , kIDNoisePad , kIDPRFWidth @@ -113,11 +134,14 @@ class AliTRDcalibDB : public TObject { , kIDSuperModulePos , kIDPIDNN , kIDPIDLQ + , kIDPIDLQ1D , kIDRecoParam , kIDMonitoringData , kIDChamberStatus , kIDPadStatus - , kIDDCS }; // IDs of cached objects + , kIDDCS + , kIDAttach + , kCDBCacheSize }; // IDs of cached objects const TObject *GetCachedCDBObject(Int_t id); @@ -134,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: @@ -149,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 +