#include <TMath.h>
#include <TRandom.h>
+#include <TClonesArray.h>
#include "AliCDBManager.h"
#include "AliCDBStorage.h"
#include "AliLog.h"
#include "AliTRDcalibDB.h"
+#include "AliTRDrecoParam.h"
#include "AliTRDgeometry.h"
#include "AliTRDpadPlane.h"
#include "AliTRDCommonParam.h"
case kIDPIDLQ :
return CacheCDBEntry(kIDPIDLQ ,"TRD/Calib/PIDLQ");
break;
+ case kIDRecoParam :
+ return CacheCDBEntry(kIDRecoParam ,"TRD/Calib/RecoParam");
+ break;
}
AliCDBEntry *entry = AliCDBManager::Instance()->Get(cdbPath,fRun);
if (!entry) {
- AliFatal(Form("Failed to get entry: %s",cdbPath));
+ AliError(Form("Failed to get entry: %s",cdbPath));
return 0;
}
}
+//_____________________________________________________________________________
+AliTRDrecoParam* AliTRDcalibDB::GetRecoParam(Int_t */*eventtype*/)
+{
+ const TClonesArray *recos = dynamic_cast<const TClonesArray*>(GetCachedCDBObject(kIDRecoParam));
+ if(!recos) return 0x0;
+
+ // calculate entry based on event type info
+ Int_t n = 0; //f(eventtype[0], eventtype[1], ....)
+ return (AliTRDrecoParam*)recos->UncheckedAt(n);
+}
+
+
//_____________________________________________________________________________
Bool_t AliTRDcalibDB::IsPadMasked(Int_t det, Int_t col, Int_t row)
{
}
//_____________________________________________________________________________
-const AliTRDCalPID *AliTRDcalibDB::GetPIDObject(AliTRDrecoParam::AliTRDpidMethod method)
+const AliTRDCalPID *AliTRDcalibDB::GetPIDObject(AliTRDReconstructor::AliTRDpidMethod method)
{
//
// Returns the object storing the distributions for PID with likelihood
//
switch(method) {
- case AliTRDrecoParam::kLQPID:
+ case AliTRDReconstructor::kLQPID:
return dynamic_cast<const AliTRDCalPID *>(GetCachedCDBObject(kIDPIDLQ));
- case AliTRDrecoParam::kNNPID:
+ case AliTRDReconstructor::kNNPID:
return dynamic_cast<const AliTRDCalPID *>(GetCachedCDBObject(kIDPIDNN));
}
//_____________________________________________________________________________
Int_t AliTRDcalibDB::PadResponse(Double_t signal, Double_t dist
- , Int_t layer, Double_t *pad) const
+ , Int_t layer, Double_t *pad) const
{
//
// Applies the pad response
// something dependent on calibration values
//
- Int_t iBin = ((Int_t) (( - dist - fPRFlo) / fPRFwid));
+ Int_t iBin = ((Int_t) ((-dist - fPRFlo) / fPRFwid));
Int_t iOff = layer * fPRFbin;
Int_t iBin0 = iBin - fPRFpad + iOff;