#include "AliTRDPIDReference.h"
#include "AliTRDcalibDB.h"
-#include "AliTRDtrapConfig.h"
-#include "AliTRDtrapConfigHandler.h"
#include "AliTRDCommonParam.h"
#include "Cal/AliTRDCalROC.h"
,fPRFpad(0)
,fPIDResponse(NULL)
,fOnlineGainTableID(0)
- ,fTrapConfig(0x0)
{
//
// Default constructor
,fPRFpad(0)
,fPIDResponse(NULL)
,fOnlineGainTableID(0)
- ,fTrapConfig(0x0)
{
//
// Copy constructor (not that it make any sense for a singleton...)
case kIDFEE :
return CacheCDBEntry(kIDFEE ,"TRD/Calib/FEE");
break;
- case kIDTrapConfig :
- return CacheCDBEntry(kIDFEE ,"TRD/Calib/TrapConfig");
- break;
case kIDDCS :
return CacheCDBEntry(kIDDCS ,"TRD/Calib/DCS");
break;
}
-AliTRDtrapConfig* AliTRDcalibDB::GetTrapConfig()
-{
- // return an existing TRAPconfig or load it from the OCDB
- // in case of failure, a default TRAPconfig is created
-
- if (fTrapConfig)
- return fTrapConfig;
- else {
- // query the configuration to be used
- TString configName;
- this->GetGlobalConfiguration(configName);
- TString configVersion;
- this->GetGlobalConfigurationVersion(configVersion);
-
- this->LoadTrapConfig(configName, configVersion);
-
- // if we still don't have a valid TRAPconfig, create a default one
- if (!fTrapConfig) {
- AliWarning("Falling back to default configuration");
- fTrapConfig = new AliTRDtrapConfig("default", "default TRAP configuration");
- AliTRDtrapConfigHandler cfgHandler(fTrapConfig);
- cfgHandler.Init();
- cfgHandler.LoadConfig();
- }
-
- AliInfo(Form("using TRAPconfig \"%s\"", fTrapConfig->GetTitle()));
-
- return fTrapConfig;
- }
-}
-
-
-AliTRDtrapConfig* AliTRDcalibDB::LoadTrapConfig(const TString &name, const TString &version)
-{
- // try to load the specified configuration from the OCDB
- // if it fails, or it does not exist, return null
-
- AliInfo(Form("looking for TRAPconfig \"%s.%s\"", name.Data(), version.Data()));
-
- const AliTRDCalTrapConfig *caltrap = dynamic_cast<const AliTRDCalTrapConfig*> (GetCachedCDBObject(kIDTrapConfig));
-
- if (caltrap) {
- TString configName(name);
- configName.Append(".");
- configName.Append(version);
- fTrapConfig = caltrap->Get(configName);
- }
- else {
- fTrapConfig = 0x0;
- AliError("No TRAPconfig entry found!");
- }
-
- return fTrapConfig;
-}
#include "AliTRDPIDResponse.h"
#endif
-#include "AliTRDCalTrapConfig.h"
-#include "AliTRDtrapConfig.h"
-
class TString;
class AliCDBEntry;
Int_t PadResponse(Double_t signal, Double_t dist
, Int_t layer, Double_t *pad) const;
- AliTRDtrapConfig* GetTrapConfig();
- AliTRDtrapConfig* LoadTrapConfig(const TString &name = "", const TString &version = "");
-
protected:
// For caching see also implentation of GetCachedCDBObject in the .cxx file
, kIDNoisePad
, kIDPRFWidth
, kIDFEE
- , kIDTrapConfig
, kIDChamberPos
, kIDStackPos
, kIDSuperModulePos
AliTRDPIDResponse *fPIDResponse; // TRD PID Response function
Int_t fOnlineGainTableID; // ID for online gain table
-
- AliTRDtrapConfig* fTrapConfig; // TRAP configuration
private:
{-2., 2., -2., 2., -2., 2.};
Int_t AliTRDltuParam::fgDyMax = 63;
Int_t AliTRDltuParam::fgDyMin = -64;
-Float_t AliTRDltuParam::fgBinDy = 140e-4;
+Float_t AliTRDltuParam::fgBinDy = 140e-6;
Float_t AliTRDltuParam::fgWidthPad[6] =
{0.635, 0.665, 0.695, 0.725, 0.755, 0.785};
Float_t AliTRDltuParam::fgLengthInnerPadC1[6] =
dyMinInt = fgDyMin;
dyMaxInt = fgDyMax;
- // deflection cut is considered for |B| > 0.1 T only
if (TMath::Abs(fMagField) < 0.1)
return;
Float_t e = 0.30;
- Float_t maxDeflTemp = GetPerp(det, rob, mcm, ch)/2. * // Sekante/2 (cm)
- (e * 1e-2 * TMath::Abs(fMagField) / fPtMin); // 1/R (1/cm)
+ Float_t maxDeflTemp = GetPerp(det, rob, mcm, ch)/2. * // Sekante/2
+ (e * TMath::Abs(fMagField) / fPtMin); // 1/R
Float_t maxDeflAngle = 0.;
- Float_t phi = GetPhi(det, rob, mcm, ch);
- if (maxDeflTemp < TMath::Cos(phi)) {
+ if (maxDeflTemp < 1.) {
maxDeflAngle = TMath::ASin(maxDeflTemp);
Float_t dyMin = ( fgDriftLength *
- TMath::Tan(phi - maxDeflAngle) );
+ tan(GetPhi(det, rob, mcm, ch) - maxDeflAngle) );
dyMinInt = Int_t(dyMin / fgBinDy);
- // clipping to allowed range
if (dyMinInt < fgDyMin)
dyMinInt = fgDyMin;
- else if (dyMinInt > fgDyMax)
- dyMinInt = fgDyMax;
Float_t dyMax = ( fgDriftLength *
- TMath::Tan(phi + maxDeflAngle) );
+ TMath::Tan(GetPhi(det, rob, mcm, ch) + maxDeflAngle) );
dyMaxInt = Int_t(dyMax / fgBinDy);
- // clipping to allowed range
if (dyMaxInt > fgDyMax)
dyMaxInt = fgDyMax;
- else if (dyMaxInt < fgDyMin)
- dyMaxInt = fgDyMin;
}
- else if (maxDeflTemp < 0.) {
- // this must not happen
- printf("Inconsistent calculation of sin(alpha): %f\n", maxDeflTemp);
- }
- else {
- // TRD is not reached at the given pt threshold
- // max range
- }
-
if ((dyMaxInt - dyMinInt) <= 0) {
- printf("strange dy range: [%i,%i], using max range now\n", dyMinInt, dyMaxInt);
- dyMaxInt = fgDyMax;
- dyMinInt = fgDyMin;
+ printf("strange dy range: [%i,%i]\n", dyMinInt, dyMaxInt);
}
}
#include "AliLoader.h"
#include "AliTRDfeeParam.h"
-#include "AliTRDcalibDB.h"
+#include "AliTRDtrapConfigHandler.h"
#include "AliTRDtrapConfig.h"
#include "AliTRDdigitsManager.h"
#include "AliTRDarrayADC.h"
if (!fInitialized) {
fFeeParam = AliTRDfeeParam::Instance();
- fTrapConfig = AliTRDcalibDB::Instance()->GetTrapConfig();
+ fTrapConfig = AliTRDtrapConfigHandler::GetTrapConfig();
}
fDetector = det;
Cal/AliTRDCalOnlineGainTableROC.cxx
Cal/AliTRDCalOnlineGainTableMCM.cxx
Cal/AliTRDCalOnlineGainTableROC.h
- Cal/AliTRDCalTrapConfig.cxx
AliTRDCalibraFit.cxx
AliTRDCalibraMode.cxx
AliTRDCalibraVector.cxx
+++ /dev/null
-#include "TString.h"
-
-#include "AliLog.h"
-#include "AliTRDCalTrapConfig.h"
-
-ClassImp(AliTRDCalTrapConfig)
-
-AliTRDCalTrapConfig::AliTRDCalTrapConfig() :
- TObject(),
- fConfigList()
-{
- // ctor
-
-}
-
-AliTRDCalTrapConfig::~AliTRDCalTrapConfig()
-{
- // dtor
-
-}
-
-AliTRDtrapConfig* AliTRDCalTrapConfig::Get(const TString &name) const
-{
- return (AliTRDtrapConfig*) fConfigList.FindObject(name.Data());
-}
-
-void AliTRDCalTrapConfig::Print(Option_t * /* option */) const
-{
- TIter config(&fConfigList);
-
- while (AliTRDtrapConfig *cfg = (AliTRDtrapConfig*) config()) {
- AliInfo(Form("found TRAPconfig: %s - %s", cfg->GetName(), cfg->GetTitle()));
- }
-}
+++ /dev/null
-/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- * See cxx source for full Copyright notice */
-
-#ifndef ALITRDCALTRAPCONFIG
-#define ALITRDCALTRAPCONFIG
-
-#include "TObject.h"
-#include "TList.h"
-
-#include "AliTRDtrapConfig.h"
-
-class AliTRDCalTrapConfig : public TObject
-{
-public:
- AliTRDCalTrapConfig();
- ~AliTRDCalTrapConfig();
-
- void Add(AliTRDtrapConfig *cfg) { fConfigList.Add(cfg); }
-
- virtual void Print(Option_t *option = "") const;
-
- AliTRDtrapConfig* Get(const TString &name) const;
-
-protected:
- TList fConfigList;
-
- ClassDef(AliTRDCalTrapConfig, 1);
-};
-
-#endif
#pragma link C++ class AliTRDCalOnlineGainTable+;
#pragma link C++ class AliTRDCalOnlineGainTableROC+;
#pragma link C++ class AliTRDCalOnlineGainTableMCM+;
-#pragma link C++ class AliTRDCalTrapConfig+;
#pragma link C++ class AliTRDCalChamberStatus+;
#pragma link C++ class AliTRDCalPadStatus+;