X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=FMD%2FAliFMDParameters.cxx;h=d7bff74ef9e6501b5825a3c7d40c2b7ca467efc5;hb=1e8f773ec10afa84ca5d4a654a27b44759f36097;hp=e90e295032e196c5c10a0532cc8d792cbf6d13e4;hpb=d2a27428a773e192a502166e0a679206e85e21fa;p=u%2Fmrichter%2FAliRoot.git diff --git a/FMD/AliFMDParameters.cxx b/FMD/AliFMDParameters.cxx index e90e295032e..d7bff74ef9e 100644 --- a/FMD/AliFMDParameters.cxx +++ b/FMD/AliFMDParameters.cxx @@ -95,58 +95,117 @@ AliFMDParameters::Init() // Initialize the parameters manager. We need to get stuff from the // CDB here. if (fIsInit) return; + InitPulseGain(); + InitPedestal(); + InitDeadMap(); + InitSampleRate(); + InitZeroSuppression(); + InitAltroMap(); + fIsInit = kTRUE; +} +//__________________________________________________________________ +void +AliFMDParameters::InitPulseGain() +{ AliCDBManager* cdb = AliCDBManager::Instance(); AliCDBEntry* gain = cdb->Get(fgkPulseGain); - AliCDBEntry* pedestal = cdb->Get(fgkPedestal); - AliCDBEntry* deadMap = cdb->Get(fgkDead); - AliCDBEntry* zeroSup = cdb->Get(fgkZeroSuppression); - AliCDBEntry* sampRat = cdb->Get(fgkSampleRate); - AliCDBEntry* hwMap = cdb->Get(fgkAltroMap); + if (!gain) { + AliWarning(Form("No %s found in CDB, perhaps you need to " + "use AliFMDCalibFaker?", fgkPulseGain)); + return; + } - if (gain) { - AliDebug(1, Form("Got gain from CDB")); - fPulseGain = dynamic_cast(gain->GetObject()); - if (!fPulseGain) - AliWarning("Invalid pulser gain object from CDB"); + AliDebug(1, Form("Got gain from CDB")); + fPulseGain = dynamic_cast(gain->GetObject()); + if (!fPulseGain) AliWarning("Invalid pulser gain object from CDB"); +} +//__________________________________________________________________ +void +AliFMDParameters::InitPedestal() +{ + AliCDBManager* cdb = AliCDBManager::Instance(); + AliCDBEntry* pedestal = cdb->Get(fgkPedestal); + if (!pedestal) { + AliWarning(Form("No %s found in CDB, perhaps you need to " + "use AliFMDCalibFaker?", fgkPedestal)); + return; } - if (pedestal) { - AliDebug(1, Form("Got pedestal from CDB")); - fPedestal = dynamic_cast(pedestal->GetObject()); - if (!fPedestal) - AliWarning("Invalid pedestal object from CDB"); + AliDebug(1, Form("Got pedestal from CDB")); + fPedestal = dynamic_cast(pedestal->GetObject()); + if (!fPedestal) AliWarning("Invalid pedestal object from CDB"); +} + +//__________________________________________________________________ +void +AliFMDParameters::InitDeadMap() +{ + AliCDBManager* cdb = AliCDBManager::Instance(); + AliCDBEntry* deadMap = cdb->Get(fgkDead); + if (!deadMap) { + AliWarning(Form("No %s found in CDB, perhaps you need to " + "use AliFMDCalibFaker?", fgkDead)); + return; } - if (deadMap) { - AliDebug(1, Form("Got dead map from CDB")); - fDeadMap = dynamic_cast(deadMap->GetObject()); - if (!fDeadMap) - AliWarning("Invalid dead map object from CDB"); + AliDebug(1, Form("Got dead map from CDB")); + fDeadMap = dynamic_cast(deadMap->GetObject()); + if (!fDeadMap) AliWarning("Invalid dead map object from CDB"); +} + +//__________________________________________________________________ +void +AliFMDParameters::InitZeroSuppression() +{ + AliCDBManager* cdb = AliCDBManager::Instance(); + AliCDBEntry* zeroSup = cdb->Get(fgkZeroSuppression); + if (!zeroSup) { + AliWarning(Form("No %s found in CDB, perhaps you need to " + "use AliFMDCalibFaker?", fgkZeroSuppression)); + return; } - if (zeroSup) { - AliDebug(1, Form("Got zero suppression from CDB")); - fZeroSuppression = - dynamic_cast(zeroSup->GetObject()); - if (!fZeroSuppression) - AliWarning("Invalid zero suppression object from CDB"); + AliDebug(1, Form("Got zero suppression from CDB")); + fZeroSuppression = + dynamic_cast(zeroSup->GetObject()); + if (!fZeroSuppression)AliWarning("Invalid zero suppression object from CDB"); +} + +//__________________________________________________________________ +void +AliFMDParameters::InitSampleRate() +{ + AliCDBManager* cdb = AliCDBManager::Instance(); + AliCDBEntry* sampRat = cdb->Get(fgkSampleRate); + if (!sampRat) { + AliWarning(Form("No %s found in CDB, perhaps you need to " + "use AliFMDCalibFaker?", fgkSampleRate)); + return; } - if (sampRat) { - AliDebug(1, Form("Got zero suppression from CDB")); - fSampleRate = - dynamic_cast(sampRat->GetObject()); - if (!fSampleRate) - AliWarning("Invalid zero suppression object from CDB"); + AliDebug(1, Form("Got zero suppression from CDB")); + fSampleRate = dynamic_cast(sampRat->GetObject()); + if (!fSampleRate) AliWarning("Invalid zero suppression object from CDB"); +} + +//__________________________________________________________________ +void +AliFMDParameters::InitAltroMap() +{ + AliCDBManager* cdb = AliCDBManager::Instance(); + AliCDBEntry* hwMap = cdb->Get(fgkAltroMap); + if (!hwMap) { + AliWarning(Form("No %s found in CDB, perhaps you need to " + "use AliFMDCalibFaker?", fgkAltroMap)); + fAltroMap = new AliFMDAltroMapping; + return; } - if (hwMap) { - AliDebug(1, Form("Got ALTRO map from CDB")); - fAltroMap = dynamic_cast(hwMap->GetObject()); - if (!fAltroMap) - AliWarning("Invalid ALTRO map object from CDB"); + AliDebug(1, Form("Got ALTRO map from CDB")); + fAltroMap = dynamic_cast(hwMap->GetObject()); + if (!fAltroMap) { + AliWarning("Invalid ALTRO map object from CDB"); + fAltroMap = new AliFMDAltroMapping; } - if (!fAltroMap) fAltroMap = new AliFMDAltroMapping; - - fIsInit = kTRUE; } + //__________________________________________________________________ Float_t AliFMDParameters::GetThreshold() const @@ -174,6 +233,9 @@ AliFMDParameters::GetPulseGain(UShort_t detector, Char_t ring, fFixedPulseGain = fVA1MipRange * GetEdepMip() / fAltroChannelSize; return fFixedPulseGain; } + AliDebug(50, Form("pulse gain for FMD%d%c[%2d,%3d]=%f", + detector, ring, sector, strip, + fPulseGain->Value(detector, ring, sector, strip))); return fPulseGain->Value(detector, ring, sector, strip); } @@ -183,6 +245,10 @@ AliFMDParameters::IsDead(UShort_t detector, Char_t ring, UShort_t sector, UShort_t strip) const { if (!fDeadMap) return kFALSE; + AliDebug(50, Form("Dead for FMD%d%c[%2d,%3d]=%s", + detector, ring, sector, strip, + fDeadMap->operator()(detector, ring, sector, strip) ? + "no" : "yes")); return fDeadMap->operator()(detector, ring, sector, strip); } @@ -193,6 +259,10 @@ AliFMDParameters::GetZeroSuppression(UShort_t detector, Char_t ring, { if (!fZeroSuppression) return fFixedZeroSuppression; // Need to map strip to ALTRO chip. + AliDebug(50, Form("zero sup. for FMD%d%c[%2d,%3d]=%f", + detector, ring, sector, strip, + fZeroSuppression->operator()(detector, ring, + sector, strip))); return fZeroSuppression->operator()(detector, ring, sector, strip/128); } @@ -202,6 +272,7 @@ AliFMDParameters::GetSampleRate(UShort_t ddl) const { if (!fSampleRate) return fFixedSampleRate; // Need to map sector to digitizier card. + AliDebug(50, Form("Sample rate for %d=%d", ddl, fSampleRate->Rate(ddl))); return fSampleRate->Rate(ddl); } @@ -211,6 +282,9 @@ AliFMDParameters::GetPedestal(UShort_t detector, Char_t ring, UShort_t sector, UShort_t strip) const { if (!fPedestal) return fFixedPedestal; + AliDebug(50, Form("pedestal for FMD%d%c[%2d,%3d]=%f", + detector, ring, sector, strip, + fPedestal->Value(detector, ring, sector, strip))); return fPedestal->Value(detector, ring, sector, strip); } @@ -220,6 +294,9 @@ AliFMDParameters::GetPedestalWidth(UShort_t detector, Char_t ring, UShort_t sector, UShort_t strip) const { if (!fPedestal) return fFixedPedestalWidth; + AliDebug(50, Form("pedetal width for FMD%d%c[%2d,%3d]=%f", + detector, ring, sector, strip, + fPedestal->Width(detector, ring, sector, strip))); return fPedestal->Width(detector, ring, sector, strip); }