AliRoot Core  v5-06-30 (35d6c57)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliMpManuStore Class Reference

The container class for manu serial numbers. More...

#include <AliMpManuStore.h>

Inheritance diagram for AliMpManuStore:

Public Member Functions

 AliMpManuStore (TRootIOCtor *ioCtor)
 
virtual ~AliMpManuStore ()
 
Bool_t AddManu (Int_t detElemId, Int_t manuId, Int_t serialNb)
 
Int_t NofManus () const
 
Int_t NofManus (Int_t detElemId) const
 
Int_t GetManuSerial (Int_t detElemId, Int_t manuId) const
 
MpPair_t GetDetElemIdManu (Int_t manuSerial) const
 

Static Public Member Functions

static AliMpManuStoreInstance (Bool_t warn=true)
 
static AliMpManuStoreReadData (const AliMpDataStreams &dataStreams, Bool_t warn=true)
 
static void SetWarnIfDoublon (Bool_t warn)
 

Private Member Functions

 AliMpManuStore (const AliMpDataStreams &dataStreams)
 
 AliMpManuStore ()
 Not implemented. More...
 
 AliMpManuStore (const AliMpManuStore &rhs)
 Not implemented. More...
 
AliMpManuStoreoperator= (const AliMpManuStore &rhs)
 Not implemented. More...
 
Bool_t ReadData (const AliMpDataStreams &dataStreams, const AliMpDetElement *detElement, Int_t &nofManus)
 
Bool_t ReadManuSerial (const AliMpDataStreams &dataStreams)
 
void ReplaceManu (Int_t detElemId, Int_t manuId, Int_t serialNb)
 
Bool_t WriteData (const TString &outDir="data_run_out")
 

Private Attributes

TExMap fManuToSerialNbs
 Map from manuId to serial #. More...
 
TExMap fSerialNbToManus
 Map manu serial # to manuId. More...
 
TExMap fNofManusInDE
 Number of manus with serial nbs in DE. More...
 
Int_t fNofManus
 Total number of manus. More...
 

Static Private Attributes

static AliMpManuStorefgInstance = 0
 Singleton instance. More...
 
static Bool_t fgWarnIfDoublon = kFALSE
 Option to warn about doublons. More...
 

Detailed Description

The container class for manu serial numbers.

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

Definition at line 29 of file AliMpManuStore.h.

Constructor & Destructor Documentation

AliMpManuStore::AliMpManuStore ( TRootIOCtor *  ioCtor)

Constructor for IO

Definition at line 124 of file AliMpManuStore.cxx.

AliMpManuStore::~AliMpManuStore ( )
virtual

Destructor

Definition at line 138 of file AliMpManuStore.cxx.

AliMpManuStore::AliMpManuStore ( const AliMpDataStreams dataStreams)
private

Standard constructor

Definition at line 101 of file AliMpManuStore.cxx.

AliMpManuStore::AliMpManuStore ( )
private

Not implemented.

Referenced by ReadData().

AliMpManuStore::AliMpManuStore ( const AliMpManuStore rhs)
private

Not implemented.

Member Function Documentation

Bool_t AliMpManuStore::AddManu ( Int_t  detElemId,
Int_t  manuId,
Int_t  serialNb 
)

Add manu to the map

Definition at line 409 of file AliMpManuStore.cxx.

Referenced by ReadData().

MpPair_t AliMpManuStore::GetDetElemIdManu ( Int_t  manuSerial) const

Return detElemId and manuId for given manu serial number as encoded pair

Definition at line 450 of file AliMpManuStore.cxx.

Referenced by AliMUONTrackerData::GetDEManu().

Int_t AliMpManuStore::GetManuSerial ( Int_t  detElemId,
Int_t  manuId 
) const
Int_t AliMpManuStore::NofManus ( ) const

Return total number of manus in the store

Definition at line 390 of file AliMpManuStore.cxx.

Referenced by AliMpDEVisu::InfoDE().

Int_t AliMpManuStore::NofManus ( Int_t  detElemId) const

Return number of manus in given detection element

Definition at line 399 of file AliMpManuStore.cxx.

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

Not implemented.

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

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

Definition at line 76 of file AliMpManuStore.cxx.

Referenced by AliMpCDB::LoadManuStore(), AliMpCDB::LoadManuStore2(), ReadManuSerial(), and AliMpCDB::WriteManuStore().

Bool_t AliMpManuStore::ReadData ( const AliMpDataStreams dataStreams,
const AliMpDetElement detElement,
Int_t &  nofManus 
)
private

Read manu serial numbers for the given detection element

Definition at line 152 of file AliMpManuStore.cxx.

Bool_t AliMpManuStore::ReadManuSerial ( const AliMpDataStreams dataStreams)
private

Read data files for all detection elements. Return true if reading was successful.

Definition at line 210 of file AliMpManuStore.cxx.

Referenced by AliMpManuStore().

void AliMpManuStore::ReplaceManu ( Int_t  detElemId,
Int_t  manuId,
Int_t  serialNb 
)
private

Replace manu in the map. As TExMap has no replcae function, we have to rebuild map once again. Not yet in use, declared private.

Definition at line 239 of file AliMpManuStore.cxx.

void AliMpManuStore::SetWarnIfDoublon ( Bool_t  warn)
inlinestatic

Set option to warn if the same serial number is present for more manus

Definition at line 85 of file AliMpManuStore.h.

Bool_t AliMpManuStore::WriteData ( const TString &  outDir = "data_run_out")
private

Write data files for all detection elements. Return true if reading was successful. Not yet in use, declared private.

Definition at line 285 of file AliMpManuStore.cxx.

Member Data Documentation

AliMpManuStore * AliMpManuStore::fgInstance = 0
staticprivate

Singleton instance.

Definition at line 71 of file AliMpManuStore.h.

Referenced by ReadData(), and ~AliMpManuStore().

Bool_t AliMpManuStore::fgWarnIfDoublon = kFALSE
staticprivate

Option to warn about doublons.

Definition at line 72 of file AliMpManuStore.h.

Referenced by AddManu(), and SetWarnIfDoublon().

TExMap AliMpManuStore::fManuToSerialNbs
mutableprivate

Map from manuId to serial #.

Definition at line 75 of file AliMpManuStore.h.

Referenced by AddManu(), GetManuSerial(), ReplaceManu(), and WriteData().

Int_t AliMpManuStore::fNofManus
private

Total number of manus.

Definition at line 78 of file AliMpManuStore.h.

Referenced by NofManus(), and ReadManuSerial().

TExMap AliMpManuStore::fNofManusInDE
mutableprivate

Number of manus with serial nbs in DE.

Definition at line 77 of file AliMpManuStore.h.

Referenced by NofManus(), and ReadManuSerial().

TExMap AliMpManuStore::fSerialNbToManus
mutableprivate

Map manu serial # to manuId.

Definition at line 76 of file AliMpManuStore.h.

Referenced by AddManu(), GetDetElemIdManu(), and ReplaceManu().


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