ROOT logo
AliRoot » MUON » MAPPING » AliMpDDLStore

class AliMpDDLStore: public TObject

 Class AliMpDDLStore

 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.
 Authors: Ivana Hrivnacova, IPN Orsay
          Christian Finck, SUBATECH Nantes

Function Members (Methods)

public:
AliMpDDLStore(TRootIOCtor* ioCtor)
virtual~AliMpDDLStore()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
TIterator*CreateBusPatchIterator() const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
AliMpBusPatch*GetBusPatch(Int_t busPatchId, Bool_t warn = true) const
Int_tGetBusPatchId(Int_t detElemId, Int_t manuId) const
AliMpDDL*GetDDL(Int_t ddlId, Bool_t warn = true) const
Int_tGetDDLfromBus(Int_t busPatchId) const
Int_tGetDEfromBus(Int_t busPatchId) const
Int_tGetDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const
AliMpDetElement*GetDetElement(Int_t detElemId, Bool_t warn = true) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
Long_tGetLinkPortId(Int_t busPatchId) const
AliMpLocalBoard*GetLocalBoard(Int_t localBoardId, Bool_t warn = true) const
virtual const char*TObject::GetName() const
Int_tGetNextDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Int_tGetPreviousDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const
const AliMpRegionalTrigger*GetRegionalTrigger() const
virtual const char*TObject::GetTitle() const
AliMpTriggerCrate*GetTriggerCrate(TString crateName, Bool_t warn = true) const
AliMpTriggerCrate*GetTriggerCrate(Int_t ddlId, Int_t index, Bool_t warn = true) const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
static AliMpDDLStore*Instance(Bool_t warn = true)
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
voidPrintAllManu() const
virtual Int_tTObject::Read(const char* name)
static AliMpDDLStore*ReadData(const AliMpDataStreams& dataStreams, Bool_t warn = true)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetRegionalTrigger(const AliMpRegionalTrigger& regionalTrigger)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
AliMpDDLStore()
AliMpDDLStore(const AliMpDataStreams& dataStreams)
AliMpDDLStore(const AliMpDDLStore& rhs)
Int_tGetBusPatchIndex(Int_t detElemId, Int_t manuId) const
static const TString&GetExplicitKeyword()
Int_tGetLocalBoardId(TString name) const
Int_tGetManuListIndex(Int_t detElemId) const
static const TString&GetRevertKeyword()
AliMpDDLStore&operator=(const AliMpDDLStore& rhs)
Bool_tReadBusPatchInfo(const AliMpDataStreams& dataStreams)
Bool_tReadBusPatchSpecial(const AliMpDataStreams& dataStreams)
Bool_tReadDDLs(const AliMpDataStreams& dataStreams)
Bool_tReadTrigger(const AliMpDataStreams& dataStreams)
Bool_tSetManus()
Bool_tSetPatchModules()
Bool_tSetTriggerDDLs()

Data Members

private:
AliMpExMapfBusPatches/< The map of bus patches per their IDs
TObjArrayfDDLs/< Array of DDL objects
TArrayIfManuBridge2[16]/< Arrays of manu number before the bridge in buspatch
TArrayIfManuList12[16]/< Arrays of 1st manu in bus
AliMpRegionalTriggerfRegionalTrigger/< Regional trigger
static AliMpDDLStore*fgInstance/< Singleton instance
static const Int_tfgkNofDDLs/< Total number of DDLs
static const Int_tfgkNofTriggerDDLs/< Total number of trigger DDLs

Class Charts

Inheritance Chart:
TObject
AliMpDDLStore

Function documentation

const TString& GetRevertKeyword()
 A keyword for ReadBusPatchSpecial()
const TString& GetExplicitKeyword()
 A keyword for ReadBusPatchSpecial()
AliMpDDLStore* Instance(Bool_t warn = true)
 Create the DDL store if it does not yet exist
 and return its instance
AliMpDDLStore* ReadData(const AliMpDataStreams& dataStreams, Bool_t warn = true)
 Load the DDL store from ASCII data files
 and return its instance
AliMpDDLStore(const AliMpDataStreams& dataStreams)
 Standard constructor
AliMpDDLStore(TRootIOCtor* ioCtor)
 Constructor for I0
~AliMpDDLStore()
 Destructor
Int_t GetManuListIndex(Int_t detElemId) const
 Return the index of the manu list for given detElemId
Int_t GetBusPatchIndex(Int_t detElemId, Int_t manuId) const
 Calculate the index of the buspatch from manuId
Bool_t ReadDDLs(const AliMpDataStreams& dataStreams)
 Read ddl <-> bus patch file
Bool_t ReadTrigger(const AliMpDataStreams& dataStreams)
 create trigger DDL object and Global crate object
SetTriggerDDLs()
 Create trigger DDLs and set DDL Ids in the regional trigger
Bool_t SetManus()
 Set manus for each bus patch
Bool_t ReadBusPatchSpecial(const AliMpDataStreams& dataStreams)
 Read file with bus patches with a special order of manus
 and reset the manus arrays filled via SetManu function
Bool_t SetPatchModules()
 Compute the number of manu per PCB for each buspatch
Bool_t ReadBusPatchInfo(const AliMpDataStreams& dataStreams)
 read the buspatch info file and set buspatch info
Int_t GetLocalBoardId(TString name) const
 return the first board with a given side and line
AliMpDDL* GetDDL(Int_t ddlId, Bool_t warn = true) const
 Return DDL for given ddlId
AliMpDetElement* GetDetElement(Int_t detElemId, Bool_t warn = true) const
 Return detection element with given detElemId
AliMpBusPatch* GetBusPatch(Int_t busPatchId, Bool_t warn = true) const
 Return bus patch with given Id
AliMpLocalBoard* GetLocalBoard(Int_t localBoardId, Bool_t warn = true) const
 Return bus patch with given Id
AliMpTriggerCrate* GetTriggerCrate(TString crateName, Bool_t warn = true) const
 Return trigger crate with given name
AliMpTriggerCrate* GetTriggerCrate(Int_t ddlId, Int_t index, Bool_t warn = true) const
 Return trigger crate with given ddl and index crate
Int_t GetDEfromBus(Int_t busPatchId) const
 Return detection element Id for given busPatchId
Int_t GetDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const
 Return detElemId for local board Id and chamber id.
Int_t GetDDLfromBus(Int_t busPatchId) const
 Return DDL Id for given busPatchId
Int_t GetBusPatchId(Int_t detElemId, Int_t manuId) const
 Return bus patch for a given manuId
Long_t GetLinkPortId(Int_t busPatchId) const
void PrintAllManu() const
 Print all manu Ids and their serial numbers sorted by detection element
 and bus patch.                                                            \n
 As serial manu numbers are filled in a different way than manu Ids this
 printing allows to check that both ways are consistent
Int_t GetNextDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const
 return the next detection element in line
Int_t GetPreviousDEfromLocalBoard(Int_t localBoardId, Int_t chamberId) const
 return the previous detection element in line
void SetRegionalTrigger(const AliMpRegionalTrigger& regionalTrigger)
 Replace the existing regional trigger with the given one
CreateBusPatchIterator() const
 Create the iterator over bus patches
AliMpDDLStore(TRootIOCtor* ioCtor)
const AliMpRegionalTrigger* GetRegionalTrigger() const
 Return regional trigger object
{ return &fRegionalTrigger; }
AliMpDDLStore(const AliMpDataStreams& dataStreams)
 Not implemented
AliMpDDLStore& operator=(const AliMpDDLStore& rhs)
 Not implemented