From 8d8e920c928f291455f3e6ee6b1825694c46eb40 Mon Sep 17 00:00:00 2001 From: hristov Date: Sun, 17 Jun 2007 20:49:14 +0000 Subject: [PATCH] Reflect changes in VCalibParam and VStores (Laurent) --- MUON/AliMUONGainSubprocessor.cxx | 43 +++------ MUON/AliMUONGainSubprocessor.h | 5 +- MUON/AliMUONPadStatusMaker.cxx | 125 ++++++++++++++------------- MUON/AliMUONPadStatusMaker.h | 20 ++--- MUON/AliMUONPadStatusMapMaker.cxx | 77 ++++++++++------- MUON/AliMUONPadStatusMapMaker.h | 8 +- MUON/AliMUONPedestalSubprocessor.cxx | 39 ++++----- MUON/AliMUONPedestalSubprocessor.h | 4 +- 8 files changed, 154 insertions(+), 167 deletions(-) diff --git a/MUON/AliMUONGainSubprocessor.cxx b/MUON/AliMUONGainSubprocessor.cxx index a013596da49..285f9f8b2b5 100644 --- a/MUON/AliMUONGainSubprocessor.cxx +++ b/MUON/AliMUONGainSubprocessor.cxx @@ -15,25 +15,22 @@ // $Id$ +#include "AliMUONGainSubprocessor.h" + +#include "AliCDBMetaData.h" +#include "AliLog.h" #include "AliMUON2DMap.h" +#include "AliMUON2DStoreValidator.h" #include "AliMUONCalibParamNF.h" #include "AliMUONConstants.h" -#include "AliMUONObjectPair.h" -#include "AliMUONGainSubprocessor.h" #include "AliMUONPreprocessor.h" -#include "AliMUONVDataIterator.h" +#include "AliMpConstants.h" #include "AliMpDDLStore.h" -#include "AliMUON2DStoreValidator.h" - -#include "AliCDBMetaData.h" -#include "AliLog.h" - -#include #include #include #include +#include #include - #include /// @@ -192,8 +189,7 @@ AliMUONGainSubprocessor::ReadFile(const char* filename) Float_t xlim; Float_t chi2, chi22; - static const Int_t kNchannels(64); - static Bool_t replace(kFALSE); + static const Int_t kNchannels(AliMpConstants::ManuNofChannels()); Int_t n(0); while ( in.getline(line,256) ) @@ -210,12 +206,12 @@ AliMUONGainSubprocessor::ReadFile(const char* filename) if ( a0==a1 && a1==a2 && a0==-2) continue; AliMUONVCalibParam* gain = - static_cast(fGains->Get(detElemID,manuID)); + static_cast(fGains->FindObject(detElemID,manuID)); if (!gain) { - gain = new AliMUONCalibParamNF(6,kNchannels,0);//AliMUONVCalibParam::InvalidFloatValue()); - fGains->Set(detElemID,manuID,gain,replace); + gain = new AliMUONCalibParamNF(6,detElemID,manuID,kNchannels,0); + fGains->Add(gain); } gain->SetValueAsFloat(manuChannel,0,a0); gain->SetValueAsFloat(manuChannel,1,a1); @@ -228,20 +224,3 @@ AliMUONGainSubprocessor::ReadFile(const char* filename) in.close(); return n; } - - -//_____________________________________________________________________________ -void -AliMUONGainSubprocessor::Print(Option_t* opt) const -{ - /// ouput to screen - AliMUONVDataIterator* it = fGains->Iterator(); - AliMUONObjectPair* p; - - while ( ( p = static_cast(it->Next() ) ) ) - { - AliMUONVCalibParam* value = static_cast(p->Value()); - value->Print(opt); - if ( it->IsOwner() ) delete p; - } -} diff --git a/MUON/AliMUONGainSubprocessor.h b/MUON/AliMUONGainSubprocessor.h index b1dd1661413..6ac737643df 100644 --- a/MUON/AliMUONGainSubprocessor.h +++ b/MUON/AliMUONGainSubprocessor.h @@ -16,7 +16,7 @@ # include "AliMUONVSubprocessor.h" #endif -class AliMUONV2DStore; +class AliMUONVStore; class TObjArray; class AliMUONGainSubprocessor : public AliMUONVSubprocessor @@ -27,7 +27,6 @@ public: void Initialize(Int_t run, UInt_t startTime, UInt_t endTime); UInt_t Process(TMap* dcsAliasMap); - void Print(Option_t* opt="") const; private: /// Not implemented @@ -38,7 +37,7 @@ private: Int_t ReadFile(const char* filename); private: - AliMUONV2DStore* fGains; //!< Gains for the MUON TRK + AliMUONVStore* fGains; //!< Gains for the MUON TRK ClassDef(AliMUONGainSubprocessor,1) // A shuttle preprocessor for MUON TRK gains }; diff --git a/MUON/AliMUONPadStatusMaker.cxx b/MUON/AliMUONPadStatusMaker.cxx index a26026130f8..f6e1d7093d4 100644 --- a/MUON/AliMUONPadStatusMaker.cxx +++ b/MUON/AliMUONPadStatusMaker.cxx @@ -24,15 +24,18 @@ #include "AliMUONPadStatusMaker.h" +#include "AliCDBEntry.h" +#include "AliCDBManager.h" +#include "AliDCSValue.h" +#include "AliLog.h" #include "AliMUON2DMap.h" #include "AliMUON2DStoreValidator.h" #include "AliMUONCalibParamNI.h" #include "AliMUONCalibrationData.h" #include "AliMUONHVNamer.h" -#include "AliMUONObjectPair.h" #include "AliMUONVCalibParam.h" -#include "AliMUONVDataIterator.h" #include "AliMpArea.h" +#include "AliMpConstants.h" #include "AliMpDEIterator.h" #include "AliMpDEManager.h" #include "AliMpIntPair.h" @@ -48,10 +51,6 @@ #include "AliMpSlatSegmentation.h" #include "AliMpStationType.h" #include "AliMpVPadIterator.h" -#include "AliCDBEntry.h" -#include "AliCDBManager.h" -#include "AliDCSValue.h" -#include "AliLog.h" #include #include #include @@ -80,9 +79,9 @@ AliMUONPadStatusMaker::~AliMUONPadStatusMaker() } //_____________________________________________________________________________ -AliMUONV2DStore* -AliMUONPadStatusMaker::Combine(const AliMUONV2DStore& store1, - const AliMUONV2DStore& store2, +AliMUONVStore* +AliMUONPadStatusMaker::Combine(const AliMUONVStore& store1, + const AliMUONVStore& store2, Int_t binShift) const { /// Combine two status containers into one, shifting store2 status bits @@ -91,18 +90,16 @@ AliMUONPadStatusMaker::Combine(const AliMUONV2DStore& store1, TStopwatch timer; timer.Start(kTRUE); - AliMUONV2DStore* combined = static_cast(store1.Clone()); + AliMUONVStore* combined = static_cast(store1.Clone()); - AliMUONVDataIterator* it = store1.Iterator(); - AliMUONObjectPair* pair; + TIter next(store1.CreateIterator()); + AliMUONVCalibParam* param1; - while ( ( pair = static_cast(it->Next()) ) ) + while ( ( param1 = static_cast(next()) ) ) { - AliMpIntPair* ip = static_cast(pair->First()); - Int_t detElemId = ip->GetFirst(); - Int_t manuId = ip->GetSecond(); - AliMUONVCalibParam* param1 = static_cast(store1.Get(detElemId,manuId)); - AliMUONVCalibParam* param2 = static_cast(store2.Get(detElemId,manuId)); + Int_t detElemId = param1->ID0(); + Int_t manuId = param1->ID1(); + AliMUONVCalibParam* param2 = static_cast(store2.FindObject(detElemId,manuId)); if (!param2) { AliWarning(Form("Could not get statuses for store2 for DE %d ManuId %d. Marking as missing.", @@ -113,11 +110,11 @@ AliMUONPadStatusMaker::Combine(const AliMUONV2DStore& store1, param2->SetValueAsInt(manuChannel,0,kMissing); } } - AliMUONVCalibParam* paramCombined = static_cast(combined->Get(detElemId,manuId)); + AliMUONVCalibParam* paramCombined = static_cast(combined->FindObject(detElemId,manuId)); if (!paramCombined) { paramCombined = static_cast(param2->Clone()); - combined->Set(detElemId,manuId,paramCombined,kFALSE); + combined->Add(paramCombined); } for ( Int_t manuChannel = 0; manuChannel < param1->Size(); ++manuChannel ) @@ -134,8 +131,6 @@ AliMUONPadStatusMaker::Combine(const AliMUONV2DStore& store1, } } - delete it; - AliInfo("Timer:"); StdoutToAliInfo(timer.Print();); @@ -143,15 +138,31 @@ AliMUONPadStatusMaker::Combine(const AliMUONV2DStore& store1, } //_____________________________________________________________________________ -AliMUONV2DStore* +AliMUONVStore* AliMUONPadStatusMaker::GeneratePadStatus(Int_t value) { /// Generate a "fake" store, with all (detElemId,manuId) present, /// and containing all the same value - AliMUONCalibParamNI param(1,64,value); + AliMUONVStore* store = new AliMUON2DMap(true); + + TList* list = AliMpManuList::ManuList(); + + AliMpIntPair* pair; + + TIter next(list); + + while ( ( pair = static_cast(next()) ) ) + { + Int_t detElemId = pair->GetFirst(); + Int_t manuId = pair->GetSecond(); + AliMUONVCalibParam* param = new AliMUONCalibParamNI(1,AliMpConstants::ManuNofChannels(),detElemId,manuId,value); + store->Add(param); + } + + delete list; - return AliMUON2DMap::Generate(param); + return store; } //_____________________________________________________________________________ @@ -334,8 +345,8 @@ AliMUONPadStatusMaker::GetSt345Status(const TMap& hvMap, } //_____________________________________________________________________________ -AliMUONV2DStore* -AliMUONPadStatusMaker::MakeGainStatus(const AliMUONV2DStore& /*gainValues*/) const +AliMUONVStore* +AliMUONPadStatusMaker::MakeGainStatus(const AliMUONVStore& /*gainValues*/) const { /// FIXME: to be implemented AliWarning("Not implemented yet"); @@ -343,7 +354,7 @@ AliMUONPadStatusMaker::MakeGainStatus(const AliMUONV2DStore& /*gainValues*/) con } //_____________________________________________________________________________ -AliMUONV2DStore* +AliMUONVStore* AliMUONPadStatusMaker::MakeHVStatus(const TMap& hvValues) const { /// Scrutinize HV values and deduce an HV status for each pad @@ -362,7 +373,7 @@ AliMUONPadStatusMaker::MakeHVStatus(const TMap& hvValues) const deIt.First(); - AliMUONV2DStore* hv = new AliMUON2DMap(kTRUE); + AliMUONVStore* hv = new AliMUON2DMap(kTRUE); while ( !deIt.IsDone() ) { @@ -429,8 +440,8 @@ AliMUONPadStatusMaker::MakeHVStatus(const TMap& hvValues) const } //_____________________________________________________________________________ -AliMUONV2DStore* -AliMUONPadStatusMaker::MakePedestalStatus(const AliMUONV2DStore& pedValues) const +AliMUONVStore* +AliMUONPadStatusMaker::MakePedestalStatus(const AliMUONVStore& pedValues) const { /// Assign a pedestal status to each pad @@ -438,18 +449,16 @@ AliMUONPadStatusMaker::MakePedestalStatus(const AliMUONV2DStore& pedValues) cons timer.Start(kTRUE); - AliMUONV2DStore* pedStatuses = new AliMUON2DMap(kTRUE); + AliMUONVStore* pedStatuses = new AliMUON2DMap(kTRUE); - AliMUONVDataIterator* it = pedValues.Iterator(); - AliMUONObjectPair* pair; + TIter next(pedValues.CreateIterator()); + AliMUONVCalibParam* pedestals; Int_t nofManus(0); - while ( ( pair = static_cast(it->Next() ) ) ) + while ( ( pedestals = static_cast(next() ) ) ) { - AliMpIntPair* ip = static_cast(pair->First()); - Int_t detElemId = ip->GetFirst(); - Int_t manuId = ip->GetSecond(); - AliMUONVCalibParam* pedestals = static_cast(pair->Second()); + Int_t detElemId = pedestals->ID0(); + Int_t manuId = pedestals->ID1(); ++nofManus; for ( Int_t manuChannel = 0; manuChannel < pedestals->Size(); ++manuChannel ) { @@ -465,11 +474,11 @@ AliMUONPadStatusMaker::MakePedestalStatus(const AliMUONV2DStore& pedValues) cons if ( pedMean == 0 ) status |= kPedMeanZero; AliMUONVCalibParam* vStatus = - static_cast(pedStatuses->Get(detElemId,manuId)); + static_cast(pedStatuses->FindObject(detElemId,manuId)); if ( !vStatus ) { - vStatus = new AliMUONCalibParamNI(1,64,0); - pedStatuses->Set(detElemId,manuId,vStatus,false); + vStatus = new AliMUONCalibParamNI(1,AliMpConstants::ManuNofChannels(),detElemId,manuId,0); + pedStatuses->Add(vStatus); } vStatus->SetValueAsInt(manuChannel,0,status); } @@ -482,34 +491,32 @@ AliMUONPadStatusMaker::MakePedestalStatus(const AliMUONV2DStore& pedValues) cons } //_____________________________________________________________________________ -AliMUONV2DStore* +AliMUONVStore* AliMUONPadStatusMaker::MakeStatus() const { /// Read ped, gains and hv values from CDB, apply some Q&A and produces /// a combined status for each pad. TMap* hvValues = fCalibrationData.HV(); - AliMUONV2DStore* hvStatus(0x0); + AliMUONVStore* hvStatus(0x0); if (!hvValues) { AliError("Could not get HV values from CDB. Will create dummy ones and mark those as missing"); - AliMUONCalibParamNI param(1,64,kHVMissing); - hvStatus = AliMUON2DMap::Generate(param); + hvStatus = GeneratePadStatus(kHVMissing); } else { hvStatus = MakeHVStatus(*hvValues); } - AliMUONV2DStore* pedValues = fCalibrationData.Pedestals(); - AliMUONV2DStore* pedStatus(0x0); + AliMUONVStore* pedValues = fCalibrationData.Pedestals(); + AliMUONVStore* pedStatus(0x0); if (!pedValues) { AliError("Could not get pedestals values from CDB. Will create dummy ones and mark those as missing"); - AliMUONCalibParamNI param(1,64,kPedMissing); - pedStatus = AliMUON2DMap::Generate(param); + pedStatus = GeneratePadStatus(kPedMissing); } else { @@ -518,7 +525,7 @@ AliMUONPadStatusMaker::MakeStatus() const // FIXME: should do the same for gains as for hv and ped. - AliMUONV2DStore* status = Combine(*hvStatus,*pedStatus,8); + AliMUONVStore* status = Combine(*hvStatus,*pedStatus,8); delete hvStatus; delete pedStatus; @@ -545,7 +552,7 @@ AliMUONPadStatusMaker::MakeStatus() const //_____________________________________________________________________________ void -AliMUONPadStatusMaker::SetStatusSt12(AliMUONV2DStore& hvStatus, +AliMUONPadStatusMaker::SetStatusSt12(AliMUONVStore& hvStatus, Int_t detElemId, Int_t isector, Int_t status) const @@ -581,11 +588,11 @@ AliMUONPadStatusMaker::SetStatusSt12(AliMUONV2DStore& hvStatus, if ( position.X() >= xmin && position.X() <= xmax) { AliMUONVCalibParam* dead = - static_cast(hvStatus.Get(detElemId,manuId)); + static_cast(hvStatus.FindObject(detElemId,manuId)); if (!dead) { - dead = new AliMUONCalibParamNI(1,64,status); - hvStatus.Set(detElemId,manuId,dead,false); + dead = new AliMUONCalibParamNI(1,AliMpConstants::ManuNofChannels(),detElemId,manuId,status); + hvStatus.Add(dead); } else { @@ -602,7 +609,7 @@ AliMUONPadStatusMaker::SetStatusSt12(AliMUONV2DStore& hvStatus, //_____________________________________________________________________________ void -AliMUONPadStatusMaker::SetStatusSt345(AliMUONV2DStore& hvStatus, +AliMUONPadStatusMaker::SetStatusSt345(AliMUONVStore& hvStatus, Int_t detElemId, Int_t pcbIndex, Int_t status) const { @@ -622,7 +629,7 @@ AliMUONPadStatusMaker::SetStatusSt345(AliMUONV2DStore& hvStatus, AliMpMotifPosition* pos = pcb->GetMotifPosition(i); Int_t manuId = pos->GetID(); AliMUONVCalibParam* dead = - static_cast(hvStatus.Get(detElemId,manuId)); + static_cast(hvStatus.FindObject(detElemId,manuId)); if (dead) { AliError(Form("dead is not null as expected from DE %d manuId %d", @@ -630,8 +637,8 @@ AliMUONPadStatusMaker::SetStatusSt345(AliMUONV2DStore& hvStatus, } if (!dead) { - dead = new AliMUONCalibParamNI(1,64,status); - hvStatus.Set(detElemId,manuId,dead,false); + dead = new AliMUONCalibParamNI(1,AliMpConstants::ManuNofChannels(),detElemId,manuId,status); + hvStatus.Add(dead); } } } diff --git a/MUON/AliMUONPadStatusMaker.h b/MUON/AliMUONPadStatusMaker.h index c0161c399fb..30ac159d117 100644 --- a/MUON/AliMUONPadStatusMaker.h +++ b/MUON/AliMUONPadStatusMaker.h @@ -20,7 +20,7 @@ #endif class AliMUONCalibrationData; -class AliMUONV2DStore; +class AliMUONVStore; class TMap; class AliMUONPadStatusMaker : public TObject @@ -29,16 +29,16 @@ public: AliMUONPadStatusMaker(const AliMUONCalibrationData& calibData); virtual ~AliMUONPadStatusMaker(); - AliMUONV2DStore* MakeGainStatus(const AliMUONV2DStore& gainValues) const; + AliMUONVStore* MakeGainStatus(const AliMUONVStore& gainValues) const; - AliMUONV2DStore* MakeHVStatus(const TMap& hvMap) const; + AliMUONVStore* MakeHVStatus(const TMap& hvMap) const; - AliMUONV2DStore* MakePedestalStatus(const AliMUONV2DStore& pedValues) const; + AliMUONVStore* MakePedestalStatus(const AliMUONVStore& pedValues) const; /// Produces a status store. Should not return 0x0. - AliMUONV2DStore* MakeStatus() const; + AliMUONVStore* MakeStatus() const; - static AliMUONV2DStore* GeneratePadStatus(Int_t value); + static AliMUONVStore* GeneratePadStatus(Int_t value); /// Return Low and High threshold for St12 HV TVector2 HVSt12Limits() const { return fHVSt12Limits; } @@ -68,8 +68,8 @@ private: private: - AliMUONV2DStore* Combine(const AliMUONV2DStore& store1, - const AliMUONV2DStore& store2, + AliMUONVStore* Combine(const AliMUONVStore& store1, + const AliMUONVStore& store2, Int_t binShift) const; Bool_t GetSt12Status(const TMap& hvMap, Int_t detElemId, Int_t sector, @@ -84,10 +84,10 @@ private: Bool_t& hvChannelON, Bool_t& hvSwitchON) const; - void SetStatusSt12(AliMUONV2DStore& hvStatus, + void SetStatusSt12(AliMUONVStore& hvStatus, Int_t detElemId, Int_t sector, Int_t status) const; - void SetStatusSt345(AliMUONV2DStore& hvStatus, + void SetStatusSt345(AliMUONVStore& hvStatus, Int_t detElemId, Int_t pcbIndex, Int_t status) const; diff --git a/MUON/AliMUONPadStatusMapMaker.cxx b/MUON/AliMUONPadStatusMapMaker.cxx index 84088c776a0..7fc6f875a5f 100644 --- a/MUON/AliMUONPadStatusMapMaker.cxx +++ b/MUON/AliMUONPadStatusMapMaker.cxx @@ -53,12 +53,13 @@ #include "AliMUON2DMap.h" #include "AliMUONCalibParamNI.h" #include "AliMUONCalibrationData.h" -#include "AliMUONObjectPair.h" -#include "AliMUONV2DStore.h" +#include "AliMUONVStore.h" #include "AliMUONVCalibParam.h" -#include "AliMUONVDataIterator.h" +#include "AliMpConstants.h" #include "AliMpIntPair.h" +#include "AliMpManuList.h" #include +#include #include /// \cond CLASSIMP @@ -128,24 +129,42 @@ AliMUONPadStatusMapMaker::GetPadStatus(Int_t detElemId, { /// Get the pad status - AliMUONVCalibParam* param = static_cast(fStatus->Get(detElemId,manuId)); + AliMUONVCalibParam* param = static_cast(fStatus->FindObject(detElemId,manuId)); return param->ValueAsInt(manuChannel); } //_____________________________________________________________________________ -AliMUONV2DStore* +AliMUONVStore* AliMUONPadStatusMapMaker::MakeEmptyPadStatusMap() { /// Make an empty (but complete) statusMap - - AliMUONCalibParamNI param(1,64,0); - - return AliMUON2DMap::Generate(param); + + AliMUONVStore* store = new AliMUON2DMap(true); + + TList* list = AliMpManuList::ManuList(); + + AliMpIntPair* pair; + + TIter next(list); + + while ( ( pair = static_cast(next()) ) ) + { + Int_t detElemId = pair->GetFirst(); + Int_t manuId = pair->GetSecond(); + AliMUONVCalibParam* param = new AliMUONCalibParamNI(1,AliMpConstants::ManuNofChannels(), + detElemId,manuId, + 0); + store->Add(param); + } + + delete list; + + return store; } //_____________________________________________________________________________ -AliMUONV2DStore* -AliMUONPadStatusMapMaker::MakePadStatusMap(const AliMUONV2DStore& status, +AliMUONVStore* +AliMUONPadStatusMapMaker::MakePadStatusMap(const AliMUONVStore& status, Int_t mask) { /// Given the status store for all pads, compute a status map store @@ -159,33 +178,30 @@ AliMUONPadStatusMapMaker::MakePadStatusMap(const AliMUONV2DStore& status, TStopwatch timer; timer.Start(kTRUE); - AliMUONV2DStore* neighbourStore = fCalibrationData.Neighbours(); + AliMUONVStore* neighbourStore = fCalibrationData.Neighbours(); - AliMUONV2DStore* statusMap = status.CloneEmpty(); + AliMUONVStore* statusMap = status.Create(); - AliMUONVDataIterator* it = status.Iterator(); - AliMUONObjectPair* pair; + TIter next(status.CreateIterator()); + AliMUONVCalibParam* statusEntry; - while ( ( pair = static_cast(it->Next()) ) ) + while ( ( statusEntry = static_cast(next()) ) ) { - AliMpIntPair* ip = static_cast(pair->First()); - - Int_t detElemId = ip->GetFirst(); - Int_t manuId = ip->GetSecond(); + Int_t detElemId = statusEntry->ID0(); + Int_t manuId = statusEntry->ID1(); - AliMUONVCalibParam* statusEntry = static_cast(pair->Second()); - AliMUONVCalibParam* statusMapEntry = static_cast - (statusMap->Get(detElemId,manuId)); + (statusMap->FindObject(detElemId,manuId)); if (!statusMapEntry) { - statusMapEntry = new AliMUONCalibParamNI(1,64,0); - statusMap->Set(detElemId,manuId,statusMapEntry,false); + statusMapEntry = new AliMUONCalibParamNI(1,AliMpConstants::ManuNofChannels(), + detElemId,manuId,0); + statusMap->Add(statusMapEntry); } AliMUONVCalibParam* neighbours = static_cast - (neighbourStore->Get(detElemId,manuId)); + (neighbourStore->FindObject(detElemId,manuId)); if (!neighbours) { @@ -204,8 +220,8 @@ AliMUONPadStatusMapMaker::MakePadStatusMap(const AliMUONV2DStore& status, Int_t x = neighbours->ValueAsInt(manuChannel,0); if ( x > 0 ) - { // channel is a valid one (i.e. (manuId,manuChannel) is an existing pad) - // assert(x>=0); + { + // channel is a valid one (i.e. (manuId,manuChannel) is an existing pad) statusMapValue = ComputeStatusMap(*neighbours,manuChannel,detElemId); } else @@ -215,12 +231,7 @@ AliMUONPadStatusMapMaker::MakePadStatusMap(const AliMUONV2DStore& status, statusMapEntry->SetValueAsInt(manuChannel,0,statusMapValue); } - - if (it->IsOwner()) delete pair; } - - delete it; - timer.Stop(); StdoutToAliInfo( diff --git a/MUON/AliMUONPadStatusMapMaker.h b/MUON/AliMUONPadStatusMapMaker.h index 5d356b95de2..209679291ed 100644 --- a/MUON/AliMUONPadStatusMapMaker.h +++ b/MUON/AliMUONPadStatusMapMaker.h @@ -17,7 +17,7 @@ #endif class AliMUONCalibrationData; -class AliMUONV2DStore; +class AliMUONVStore; class AliMUONVCalibParam; class AliMpPad; class AliMpVSegmentation; @@ -33,10 +33,10 @@ public: /// Return status bit map to tell a pad is bad static Int_t SelfDeadMask() { return fgkSelfDead; } - AliMUONV2DStore* MakePadStatusMap(const AliMUONV2DStore& status, + AliMUONVStore* MakePadStatusMap(const AliMUONVStore& status, Int_t mask); - static AliMUONV2DStore* MakeEmptyPadStatusMap(); + static AliMUONVStore* MakeEmptyPadStatusMap(); private: @@ -53,7 +53,7 @@ private: private: static Int_t fgkSelfDead; //!< status bit map to tell a pad is bad - const AliMUONV2DStore* fStatus; //!< status store + const AliMUONVStore* fStatus; //!< status store Int_t fMask; //!< mask to be tested /// Bit numbers diff --git a/MUON/AliMUONPedestalSubprocessor.cxx b/MUON/AliMUONPedestalSubprocessor.cxx index b4b1845c04d..0f972016829 100644 --- a/MUON/AliMUONPedestalSubprocessor.cxx +++ b/MUON/AliMUONPedestalSubprocessor.cxx @@ -15,24 +15,22 @@ // $Id$ -#include - -#include -#include -#include -#include +#include "AliMUONPedestalSubprocessor.h" #include "AliCDBMetaData.h" #include "AliLog.h" #include "AliMUON2DMap.h" +#include "AliMUON2DStoreValidator.h" #include "AliMUONCalibParamNF.h" -#include "AliMUONObjectPair.h" -#include "AliMUONPedestalSubprocessor.h" #include "AliMUONPreprocessor.h" -#include "AliMUONVDataIterator.h" +#include "AliMpConstants.h" #include "AliMpDDLStore.h" -#include "AliMUON2DStoreValidator.h" #include "TObjString.h" +#include +#include +#include +#include +#include /// /// \class AliMUONPedestalSubprocessor @@ -186,8 +184,7 @@ AliMUONPedestalSubprocessor::ReadFile(const char* filename) char line[80]; Int_t busPatchID, manuID, manuChannel; Float_t pedMean, pedSigma; - static const Int_t kNchannels(64); - static Bool_t replace(kFALSE); + static const Int_t kNchannels(AliMpConstants::ManuNofChannels()); Int_t n(0); while ( in.getline(line,80) ) @@ -200,12 +197,14 @@ AliMUONPedestalSubprocessor::ReadFile(const char* filename) busPatchID,detElemID,manuID,manuChannel,pedMean,pedSigma)); AliMUONVCalibParam* ped = - static_cast(fPedestals->Get(detElemID,manuID)); + static_cast(fPedestals->FindObject(detElemID,manuID)); if (!ped) { - ped = new AliMUONCalibParamNF(2,kNchannels,AliMUONVCalibParam::InvalidFloatValue()); - fPedestals->Set(detElemID,manuID,ped,replace); + ped = new AliMUONCalibParamNF(2,kNchannels, + detElemID,manuID, + AliMUONVCalibParam::InvalidFloatValue()); + fPedestals->Add(ped); } ped->SetValueAsFloat(manuChannel,0,pedMean); ped->SetValueAsFloat(manuChannel,1,pedSigma); @@ -221,13 +220,5 @@ void AliMUONPedestalSubprocessor::Print(Option_t* opt) const { /// ouput to screen - AliMUONVDataIterator* it = fPedestals->Iterator(); - AliMUONObjectPair* p; - - while ( ( p = static_cast(it->Next() ) ) ) - { - AliMUONVCalibParam* value = static_cast(p->Value()); - value->Print(opt); - if (it->IsOwner()) delete p; - } + if (fPedestals) fPedestals->Print("",opt); } diff --git a/MUON/AliMUONPedestalSubprocessor.h b/MUON/AliMUONPedestalSubprocessor.h index 3f4c3ead490..699d341804c 100644 --- a/MUON/AliMUONPedestalSubprocessor.h +++ b/MUON/AliMUONPedestalSubprocessor.h @@ -16,7 +16,7 @@ # include "AliMUONVSubprocessor.h" #endif -class AliMUONV2DStore; +class AliMUONVStore; class TObjArray; class AliMUONPedestalSubprocessor : public AliMUONVSubprocessor @@ -38,7 +38,7 @@ private: Int_t ReadFile(const char* filename); private: - AliMUONV2DStore* fPedestals; //!< Pedestals for the MUON TRK + AliMUONVStore* fPedestals; //!< Pedestals for the MUON TRK ClassDef(AliMUONPedestalSubprocessor,1) // A shuttle preprocessor for MUON TRK pedestals }; -- 2.43.5