AliRoot Core  ee782a0 (ee782a0)
AliMpDDLStore Class Reference

The top container class for DDLs, det elements and bus patched. More...

#include <AliMpDDLStore.h>

Inheritance diagram for AliMpDDLStore:

Public Member Functions

 AliMpDDLStore (TRootIOCtor *ioCtor)
 
virtual ~AliMpDDLStore ()
 
AliMpDDLGetDDL (Int_t ddlId, Bool_t warn=true) const
 
AliMpDetElementGetDetElement (Int_t detElemId, Bool_t warn=true) const
 
AliMpBusPatchGetBusPatch (Int_t busPatchId, Bool_t warn=true) const
 
AliMpLocalBoardGetLocalBoard (Int_t localBoardId, Bool_t warn=true) const
 
AliMpTriggerCrateGetTriggerCrate (TString crateName, Bool_t warn=true) const
 
AliMpTriggerCrateGetTriggerCrate (Int_t ddlId, Int_t index, Bool_t warn=true) const
 
const AliMpRegionalTriggerGetRegionalTrigger () const
 Return regional trigger object. More...
 
Int_t GetDEfromBus (Int_t busPatchId) const
 
Int_t GetDEfromLocalBoard (Int_t localBoardId, Int_t chamberId) const
 
Int_t GetNextDEfromLocalBoard (Int_t localBoardId, Int_t chamberId) const
 
Int_t GetPreviousDEfromLocalBoard (Int_t localBoardId, Int_t chamberId) const
 
Int_t GetDDLfromBus (Int_t busPatchId) const
 
Int_t GetBusPatchId (Int_t detElemId, Int_t manuId) const
 
Long_t GetLinkPortId (Int_t busPatchId) const
 
void PrintAllManu () const
 Print info of all manus. More...
 
void SetRegionalTrigger (const AliMpRegionalTrigger &regionalTrigger)
 
TIterator * CreateBusPatchIterator () const
 

Static Public Member Functions

static AliMpDDLStoreInstance (Bool_t warn=true)
 
static AliMpDDLStoreReadData (const AliMpDataStreams &dataStreams, Bool_t warn=true)
 

Private Member Functions

 AliMpDDLStore (const AliMpDataStreams &dataStreams)
 
 AliMpDDLStore ()
 Not implemented. More...
 
 AliMpDDLStore (const AliMpDDLStore &rhs)
 Not implemented. More...
 
AliMpDDLStoreoperator= (const AliMpDDLStore &rhs)
 Not implemented. More...
 
Int_t GetManuListIndex (Int_t detElemId) const
 
Int_t GetBusPatchIndex (Int_t detElemId, Int_t manuId) const
 
Bool_t ReadDDLs (const AliMpDataStreams &dataStreams)
 
Bool_t ReadTrigger (const AliMpDataStreams &dataStreams)
 
Bool_t SetTriggerDDLs ()
 
Bool_t SetManus ()
 
Bool_t ReadBusPatchSpecial (const AliMpDataStreams &dataStreams)
 
Bool_t SetPatchModules ()
 
Bool_t ReadBusPatchInfo (const AliMpDataStreams &dataStreams)
 
Int_t GetLocalBoardId (TString name) const
 

Static Private Member Functions

static const TString & GetRevertKeyword ()
 
static const TString & GetExplicitKeyword ()
 

Private Attributes

TObjArray fDDLs
 Array of DDL objects. More...
 
AliMpExMap fBusPatches
 The map of bus patches per their IDs. More...
 
TArrayI fManuList12 [16]
 Arrays of 1st manu in bus. More...
 
TArrayI fManuBridge2 [16]
 Arrays of manu number before the bridge in buspatch. More...
 
AliMpRegionalTrigger fRegionalTrigger
 Regional trigger. More...
 

Static Private Attributes

static AliMpDDLStorefgInstance = 0
 Singleton instance. More...
 
static const Int_t fgkNofDDLs = 20
 Total number of DDLs. More...
 
static const Int_t fgkNofTriggerDDLs = 2
 Total number of trigger DDLs. More...
 

Detailed Description

The top container class for DDLs, det elements and bus patched.

It provides acces to DDL, det element and bus patches objects via various characteristics.

Author
Ivana Hrivnacova, IPN Orsay; Christian Finck, SUBATECH Nantes

Definition at line 35 of file AliMpDDLStore.h.

Constructor & Destructor Documentation

AliMpDDLStore::AliMpDDLStore ( TRootIOCtor *  ioCtor)

Constructor for I0

Definition at line 157 of file AliMpDDLStore.cxx.

AliMpDDLStore::~AliMpDDLStore ( )
virtual

Destructor

Definition at line 172 of file AliMpDDLStore.cxx.

AliMpDDLStore::AliMpDDLStore ( const AliMpDataStreams dataStreams)
private

Standard constructor

Definition at line 127 of file AliMpDDLStore.cxx.

AliMpDDLStore::AliMpDDLStore ( )
private

Not implemented.

Referenced by GetRegionalTrigger(), and ReadData().

AliMpDDLStore::AliMpDDLStore ( const AliMpDDLStore rhs)
private

Not implemented.

Member Function Documentation

TIterator * AliMpDDLStore::CreateBusPatchIterator ( ) const

Create the iterator over bus patches

Definition at line 960 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger().

Int_t AliMpDDLStore::GetBusPatchIndex ( Int_t  detElemId,
Int_t  manuId 
) const
private

Calculate the index of the buspatch from manuId

Definition at line 198 of file AliMpDDLStore.cxx.

Referenced by GetBusPatchId(), GetRegionalTrigger(), and SetManus().

Int_t AliMpDDLStore::GetDDLfromBus ( Int_t  busPatchId) const
AliMpDetElement * AliMpDDLStore::GetDetElement ( Int_t  detElemId,
Bool_t  warn = true 
) const

Return detection element with given detElemId

Definition at line 715 of file AliMpDDLStore.cxx.

Referenced by AliMUONTrackerDataHistogrammer::AddDEHisto(), AddEventsSingleRun(), AliMUONDEPainter::AliMUONDEPainter(), AliMUONPadStatusMapMaker::AliMUONPadStatusMapMaker(), AliMUONTrackerData::BuildFromDEStore(), AliMUONVTrackReconstructor::ChangeMonoCathodClusterRes(), AliMUONCDB::CheckHV(), AliMUONTrackerLV::CheckLV(), AliMUONTrackerData::CompareData(), AliMUONBusPatchEvolution::ComputeNumberOfPads(), AliMUONTrackerData::CreateBusPatchParam(), AliMUONTrackerData::CreateDetectionElementParam(), AliMUONTrackerData::CreateDouble(), AliMUONTrackerConditionDataMaker::CreateHVStore(), AliMUONTrackerData::CreateManuParam(), AliMUONTrackerData::DdlIdFromDetElemId(), AliMUONTrackerIO::DecodeOccupancy(), AliMUONPainterHelper::DEPathName(), AliMUONTrackerConditionDataMaker::ExpandConfig(), AliMUONBusPatchEvolution::FillNumberOfPads(), GetBadChannels(), GetBusPatchId(), AliMUONQAMappingCheck::GetClusterLocation(), AliMUONTrackerData::GetParts(), AliMUONBusPatchEvolution::GroupByChamber(), AliMUONBusPatchEvolution::GroupByDE(), AliMpDEVisu::InfoDE(), AliMUONDigitCalibrator::IsValidDigit(), MakeConfigCodeForBPEVOda(), MakeConfigFileForBPEVOda(), AliMUONCDB::MakeOccupancyMapStore(), AliMUONCDB::MakePedestalStore(), AliMUONCDB::ReadIntegers(), AliMUONDigitMaker::ReadTrackerDDL(), AliMUONPadStatusMaker::Report(), AliMUONRejectList::SetHVProbability(), AliMUONPadStatusMaker::SetHVStatus(), SetManus(), AliMUONCDB::ShowConfig(), AliMUONCDB::ShowFaultyBusPatches(), AliMUONCDB::ShowFaultyPedestalsBusPatches(), and AliMUON2DStoreValidator::Validate().

const TString & AliMpDDLStore::GetExplicitKeyword ( )
staticprivate

A keyword for ReadBusPatchSpecial()

Definition at line 82 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger(), and ReadBusPatchSpecial().

Long_t AliMpDDLStore::GetLinkPortId ( Int_t  busPatchId) const

Get link port and DSP from busPatch id. Return -1 if the value is not valid (the validity has to be tested in the client code)

Definition at line 844 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger().

Int_t AliMpDDLStore::GetLocalBoardId ( TString  name) const
private

return the first board with a given side and line

Definition at line 677 of file AliMpDDLStore.cxx.

Referenced by GetNextDEfromLocalBoard(), GetPreviousDEfromLocalBoard(), and GetRegionalTrigger().

Int_t AliMpDDLStore::GetManuListIndex ( Int_t  detElemId) const
private

Return the index of the manu list for given detElemId

Definition at line 189 of file AliMpDDLStore.cxx.

Referenced by GetBusPatchIndex(), GetRegionalTrigger(), ReadDDLs(), and SetPatchModules().

Int_t AliMpDDLStore::GetNextDEfromLocalBoard ( Int_t  localBoardId,
Int_t  chamberId 
) const

return the next detection element in line

Definition at line 900 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger().

Int_t AliMpDDLStore::GetPreviousDEfromLocalBoard ( Int_t  localBoardId,
Int_t  chamberId 
) const

return the previous detection element in line

Definition at line 922 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger(), and AliMUONTriggerCircuit::LoadYPos().

const AliMpRegionalTrigger* AliMpDDLStore::GetRegionalTrigger ( ) const
inline

Return regional trigger object.

Definition at line 55 of file AliMpDDLStore.h.

Referenced by AliMUONRawWriter::WriteTriggerDDL().

const TString & AliMpDDLStore::GetRevertKeyword ( )
staticprivate

A keyword for ReadBusPatchSpecial()

Definition at line 74 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger(), and ReadBusPatchSpecial().

AliMpTriggerCrate * AliMpDDLStore::GetTriggerCrate ( TString  crateName,
Bool_t  warn = true 
) const

Return trigger crate with given name

Definition at line 750 of file AliMpDDLStore.cxx.

Referenced by GetTriggerCrate(), AliMUONTriggerQADataMakerRec::MakeRaws(), and AliMUONRawWriter::WriteTriggerDDL().

AliMpTriggerCrate * AliMpDDLStore::GetTriggerCrate ( Int_t  ddlId,
Int_t  index,
Bool_t  warn = true 
) const

Return trigger crate with given ddl and index crate

Definition at line 757 of file AliMpDDLStore.cxx.

AliMpDDLStore * AliMpDDLStore::Instance ( Bool_t  warn = true)
static

Create the DDL store if it does not yet exist and return its instance

Definition at line 90 of file AliMpDDLStore.cxx.

Referenced by AliMUONTrackerDataHistogrammer::AddBusPatchHisto(), AliMUONTrackerDataHistogrammer::AddDEHisto(), AddEventsSingleRun(), AliMUON2DStoreValidator::AddMissingManu(), AliMpDEVisu::AliMpDEVisu(), AliMUONBusPatchPainter::AliMUONBusPatchPainter(), AliMUONDEPainter::AliMUONDEPainter(), AliMUONPadStatusMapMaker::AliMUONPadStatusMapMaker(), AliMUONRawWriter::AliMUONRawWriter(), AliMUONTrackerData::AliMUONTrackerData(), AliMUONTriggerCircuit::AliMUONTriggerCircuit(), AliMUONTriggerElectronics::AliMUONTriggerElectronics(), AliMUONTrackerData::AssertStores(), AliMUONTrackerQAChecker::BeautifyOccupancyHistograms(), AliMUONTrackerData::BuildFromBPStore(), AliMUONTrackerData::BuildFromDEStore(), AliMUONPainterHelper::BusPatchPathName(), AliMUONVTrackReconstructor::ChangeMonoCathodClusterRes(), AliMUONPadStatusMaker::CheckConfigConsistencyWithPedestalInformation(), CheckDE_BP_ManuPedestals(), AliMUONCDB::CheckHV(), AliMUONTrackerLV::CheckLV(), AliMUONCDB::CheckMapping(), AliMUONTrackerData::CompareData(), AliMUONBusPatchEvolution::ComputeNumberOfPads(), AliMUONTrackerData::CreateBusPatchParam(), AliMUONTrackerData::CreateChamberParam(), AliMUONTrackerData::CreateDetectionElementParam(), AliMUONTrackerData::CreateDouble(), AliMUONTrackerConditionDataMaker::CreateHVStore(), AliMUONTrackerData::CreateManuParam(), CreateWeightedRejectList(), AliMUONTrackerData::DdlIdFromBusPatchId(), AliMUONTrackerData::DdlIdFromDetElemId(), AliMUONTrackerIO::DecodeConfig(), AliMUONTrackerIO::DecodeOccupancy(), AliMUONTrackerIO::DecodePedestals(), AliMUONPainterHelper::DEPathName(), AliMUONTrackerConditionDataMaker::ExpandConfig(), AliMUONTrackerData::ExportAsASCIIOccupancyFile(), AliMUONTriggerElectronics::Feed(), AliMUONTriggerChamberEfficiency::FillFromList(), AliMUONBusPatchEvolution::FillNumberOfPads(), AliMUONTrackerQADataMakerRec::FillReadoutStatus(), GenerateConfig(), GetBadChannels(), AliMUONQAMappingCheck::GetClusterLocation(), AliMUON2DStoreValidator::GetDE(), AliMUON2DStoreValidator::GetManu(), AliMUONTrackerData::GetParts(), AliMUONBusPatchEvolution::GroupByChamber(), AliMUONBusPatchEvolution::GroupByDDL(), AliMUONBusPatchEvolution::GroupByDE(), AliMUONTriggerGUI::InitBoards(), AliMUONTrackerQADataMakerRec::InitCommon(), AliMUONTriggerDisplay::InitOrDisplayTriggerInfo(), AliMUONRecoCheck::InitTriggerResponse(), AliMUONDigitCalibrator::IsValidDigit(), AliMpCDB::LoadDDLStore(), AliMpCDB::LoadDDLStore2(), AliMUONTriggerCircuit::LoadXPos(), AliMUONTriggerCircuit::LoadYPos(), AliMUONCDB::MakeBusPatchEvolution(), MakeConfigCodeForBPEVOda(), MakeConfigFileForBPEVOda(), AliMUONCDB::MakeOccupancyMapStore(), AliMUONCDB::MakePedestalStore(), AliMUONTriggerQADataMakerRec::MakeRaws(), AliMUONManuContourMaker::ManuPathName(), MUONRawStreamTrigger(), MUONRawStreamTriggerHPExpert(), MUONRawStreamTriggerHPExpert2(), MUONRawStreamTriggerHPExpert3(), AliMUONPadStatusMaker::OccupancyStatus(), PlotBusPatchOccupancies(), AliMUONTrackerDataMaker::ProcessEvent(), AliMUONTrackerQADataMakerRec::ProjectTrackerData(), AliMUONTriggerQADataMakerRec::RawTriggerMatchOutLocal(), AliMUONTriggerCrateStore::ReadFromFile(), AliMUONCDB::ReadIntegers(), AliMUONDigitMaker::ReadTrackerDDL(), AliMUONDigitMaker::ReadTriggerDDL(), AliMUONPadStatusMaker::Report(), AliMUONRejectList::SetHVProbability(), AliMUONPadStatusMaker::SetHVStatus(), AliMUONCDB::ShowConfig(), AliMUONCDB::ShowFaultyBusPatches(), AliMUONCDB::ShowFaultyPedestalsBusPatches(), AliMUONDigitMaker::TriggerDigits(), AliMpCDB::UnloadAll(), AliMUON2DStoreValidator::Validate(), AliMUONBusPatchPainter::Validate(), AliMUONTrackerIO::WriteConfig(), AliMUONCDB::WriteConfig(), AliMpCDB::WriteDDLStore(), and AliMUONRawWriter::WriteTriggerDDL().

AliMpDDLStore& AliMpDDLStore::operator= ( const AliMpDDLStore rhs)
private

Not implemented.

Referenced by GetRegionalTrigger().

void AliMpDDLStore::PrintAllManu ( ) const

Print info of all manus.

Print all manu Ids and their serial numbers sorted by detection element and bus patch.
As serial manu numbers are filled in a different way than manu Ids this printing allows to check that both ways are consistent

Definition at line 862 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger().

Bool_t AliMpDDLStore::ReadBusPatchInfo ( const AliMpDataStreams dataStreams)
private

read the buspatch info file and set buspatch info

Definition at line 602 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), and GetRegionalTrigger().

Bool_t AliMpDDLStore::ReadBusPatchSpecial ( const AliMpDataStreams dataStreams)
private

Read file with bus patches with a special order of manus and reset the manus arrays filled via SetManu function

Definition at line 490 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), and GetRegionalTrigger().

AliMpDDLStore * AliMpDDLStore::ReadData ( const AliMpDataStreams dataStreams,
Bool_t  warn = true 
)
static

Load the DDL store from ASCII data files and return its instance

Definition at line 103 of file AliMpDDLStore.cxx.

Referenced by AliMUONPreprocessor::Initialize(), AliMpCDB::LoadDDLStore(), AliMpCDB::LoadDDLStore2(), AliMpCDB::WriteDDLStore(), and AliMpCDB::WriteMpSegmentation().

Bool_t AliMpDDLStore::ReadDDLs ( const AliMpDataStreams dataStreams)
private

Read ddl <-> bus patch file

Definition at line 221 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), and GetRegionalTrigger().

Bool_t AliMpDDLStore::ReadTrigger ( const AliMpDataStreams dataStreams)
private

create trigger DDL object and Global crate object

Definition at line 313 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), and GetRegionalTrigger().

Bool_t AliMpDDLStore::SetManus ( )
private

Set manus for each bus patch

Definition at line 386 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), and GetRegionalTrigger().

Bool_t AliMpDDLStore::SetPatchModules ( )
private

Compute the number of manu per PCB for each buspatch

Definition at line 574 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), and GetRegionalTrigger().

void AliMpDDLStore::SetRegionalTrigger ( const AliMpRegionalTrigger regionalTrigger)

Replace the existing regional trigger with the given one

Definition at line 943 of file AliMpDDLStore.cxx.

Referenced by GetRegionalTrigger().

Bool_t AliMpDDLStore::SetTriggerDDLs ( )
private

Create trigger DDLs and set DDL Ids in the regional trigger

Definition at line 324 of file AliMpDDLStore.cxx.

Referenced by AliMpDDLStore(), GetRegionalTrigger(), and SetRegionalTrigger().

Member Data Documentation

AliMpExMap AliMpDDLStore::fBusPatches
private

The map of bus patches per their IDs.

Definition at line 107 of file AliMpDDLStore.h.

Referenced by AliMpDDLStore(), CreateBusPatchIterator(), GetBusPatch(), and ReadDDLs().

TObjArray AliMpDDLStore::fDDLs
private

Array of DDL objects.

Definition at line 106 of file AliMpDDLStore.h.

Referenced by AliMpDDLStore(), GetDDL(), ReadDDLs(), SetRegionalTrigger(), and SetTriggerDDLs().

AliMpDDLStore * AliMpDDLStore::fgInstance = 0
staticprivate

Singleton instance.

Definition at line 101 of file AliMpDDLStore.h.

Referenced by AliMpDDLStore(), Instance(), ReadData(), and ~AliMpDDLStore().

const Int_t AliMpDDLStore::fgkNofDDLs = 20
staticprivate

Total number of DDLs.

Definition at line 102 of file AliMpDDLStore.h.

Referenced by GetTriggerCrate(), ReadBusPatchInfo(), ReadDDLs(), SetManus(), SetRegionalTrigger(), and SetTriggerDDLs().

const Int_t AliMpDDLStore::fgkNofTriggerDDLs = 2
staticprivate

Total number of trigger DDLs.

Definition at line 103 of file AliMpDDLStore.h.

TArrayI AliMpDDLStore::fManuBridge2[16]
private

Arrays of manu number before the bridge in buspatch.

Definition at line 109 of file AliMpDDLStore.h.

Referenced by ReadDDLs(), and SetPatchModules().

TArrayI AliMpDDLStore::fManuList12[16]
private

Arrays of 1st manu in bus.

Definition at line 108 of file AliMpDDLStore.h.

Referenced by GetBusPatchIndex(), and ReadDDLs().

AliMpRegionalTrigger AliMpDDLStore::fRegionalTrigger
private

The documentation for this class was generated from the following files: