AliRoot Core  edcc906 (edcc906)
AliMpSegmentation Class Reference

Singleton container class for mapping segmentations. More...

#include <AliMpSegmentation.h>

Inheritance diagram for AliMpSegmentation:

Public Member Functions

 AliMpSegmentation (TRootIOCtor *ioCtor)
 
virtual ~AliMpSegmentation ()
 
const AliMpVSegmentationGetMpSegmentation (Int_t detElemId, AliMp::CathodType cath, Bool_t warn=true) const
 
const AliMpVSegmentationGetMpSegmentationByElectronics (Int_t detElemId, Int_t elCardID, Bool_t warn=true) const
 
const AliMpSectorGetSector (const AliMpVSegmentation *kSegmentation, Bool_t warn=true) const
 
const AliMpSectorGetSector (Int_t detElemId, AliMp::CathodType cath, Bool_t warn=true) const
 
const AliMpSectorGetSectorByElectronics (Int_t detElemId, Int_t elCardID, Bool_t warn=true) const
 
const AliMpSlatGetSlat (const AliMpVSegmentation *kSegmentation, Bool_t warn=true) const
 
const AliMpSlatGetSlat (Int_t detElemId, AliMp::CathodType cath, Bool_t warn=true) const
 
const AliMpSlatGetSlatByElectronics (Int_t detElemId, Int_t elCardID, Bool_t warn=true) const
 
const AliMpTriggerGetTrigger (const AliMpVSegmentation *kSegmentation, Bool_t warn=true) const
 
const AliMpTriggerGetTrigger (Int_t detElemId, AliMp::CathodType cath, Bool_t warn=true) const
 
const AliMpTriggerGetTriggerByElectronics (Int_t detElemId, Int_t elCardID, Bool_t warn=true) const
 
void Print (Option_t *) const
 

Static Public Member Functions

static AliMpSegmentationInstance (Bool_t warn=true)
 
static AliMpSegmentationReadData (const AliMpDataStreams &dataStreams, Bool_t warn=true)
 

Private Member Functions

 AliMpSegmentation (const AliMpDataStreams &dataStreams)
 
 AliMpSegmentation (const AliMpSegmentation &rhs)
 Not implemented. More...
 
AliMpSegmentationoperator= (const AliMpSegmentation &rhs)
 Not implemented. More...
 
AliMpVSegmentationCreateMpSegmentation (const AliMpDataStreams &dataStreams, Int_t detElemId, AliMp::CathodType cath)
 
AliMpExMapFillElCardsMap (Int_t detElemId)
 

Private Attributes

AliMpDEStorefDetElements
 Detection element store. More...
 
AliMpStringObjMap fMpSegmentations
 Map of mapping segmentations to DE seg names. More...
 
AliMpExMap fElCardsMap
 Map of el. cards IDs to segmentations. More...
 
AliMpSlatMotifMapfSlatMotifMap
 Map of motif, motifTypes to avoid duplications and allow proper deletion. More...
 

Static Private Attributes

static AliMpSegmentationfgInstance = 0
 Singleton instance. More...
 

Detailed Description

Singleton container class for mapping segmentations.

It provides access to mapping segmentations based on the AliMpVSegmentation interface and to segmentations underlying detectors (sector, slat, trigger).
Mapping segmentations for all detection elements are created at the first call to AliMpSegmentation::Instance(). The class is a singleton, it has all constructors private, except for the special constructor for Root I/O.

Author
Ivana Hrivnacova, IPN Orsay; Laurent Aphecetche, SUBATECH

Definition at line 52 of file AliMpSegmentation.h.

Constructor & Destructor Documentation

AliMpSegmentation::AliMpSegmentation ( TRootIOCtor *  ioCtor)

Constructor for IO

Definition at line 149 of file AliMpSegmentation.cxx.

Referenced by ReadData().

AliMpSegmentation::~AliMpSegmentation ( )
virtual

Destructor

Definition at line 164 of file AliMpSegmentation.cxx.

AliMpSegmentation::AliMpSegmentation ( const AliMpDataStreams dataStreams)
private

Standard constructor - segmentation is loaded from ASCII data files

Definition at line 108 of file AliMpSegmentation.cxx.

AliMpSegmentation::AliMpSegmentation ( const AliMpSegmentation rhs)
private

Not implemented.

Member Function Documentation

AliMpVSegmentation * AliMpSegmentation::CreateMpSegmentation ( const AliMpDataStreams dataStreams,
Int_t  detElemId,
AliMp::CathodType  cath 
)
private

Create mapping segmentation for given detElemId and cath or return it if it was already built

Definition at line 186 of file AliMpSegmentation.cxx.

Referenced by AliMpSegmentation().

AliMpExMap * AliMpSegmentation::FillElCardsMap ( Int_t  detElemId)
private

Fill the map of electronic cards IDs to segmentations for given detElemId

Definition at line 242 of file AliMpSegmentation.cxx.

Referenced by AliMpSegmentation().

const AliMpVSegmentation * AliMpSegmentation::GetMpSegmentation ( Int_t  detElemId,
AliMp::CathodType  cath,
Bool_t  warn = true 
) const

Return mapping segmentation for given detElemId and cath

Definition at line 278 of file AliMpSegmentation.cxx.

Referenced by AliMpDetElement::AddManu(), AliMpDEVisu::AliMpDEVisu(), AliMUONVTrackReconstructor::ChangeMonoCathodClusterRes(), AliMUONTrackerLV::CheckLV(), AliMUONCheck::CheckOccupancy(), AliMUONSimpleClusterServer::Clusterize(), AliMUONAlignmentCompareDialog::CompareAlignment(), AliMUONGeometryTransformer::CreateDEAreas(), AliMUONTriggerGUI::CreateDigitStore(), AliMUONResponseTrigger::DisIntegrate(), AliMUONResponseTriggerV1::DisIntegrate(), AliMUONResponseV0::DisIntegrate(), AliMUONTriggerGUIbdmap::DrawDigits(), AliMUONTriggerGUIdimap::DrawMaps(), AliMUONTriggerGUIbdmap::DrawStrips(), AliMUONTriggerElectronics::Feed(), FillElCardsMap(), AliMUONTrackHitPattern::FindMatchingPads(), AliMUONTrackHitPattern::FindPadMatchingTrack(), AliMUONTrackHitPattern::FindPadMatchingTrig(), AliMUONDigitizerV3::GenerateNoisyDigitsForOneCathode(), AliMUONDigitizerV3::GenerateNoisyDigitsForTrigger(), AliMUONQAMappingCheck::GetClusterLocation(), GetSector(), GetSlat(), AliMUONTrackHitPattern::GetTrackParamAtChamber(), GetTrigger(), AliMUONTriggerUtilities::Init(), AliMUONTriggerGUI::InitBoards(), AliMUONTriggerDisplay::InitOrDisplayTriggerInfo(), AliMUONRecoCheck::IsHitInFrontOfPad(), AliMUONTrackHitPattern::IsMasked(), AliMUONTriggerCircuit::LoadXPos(), AliMUONTriggerCircuit::LoadYPos(), AliMUONTriggerQADataMakerRec::MakeRaws(), AliMUONRecoCheck::MakeTriggerableTracks(), AliMUONTrackHitPattern::PadsFromPos(), AliMUONTriggerGUI::PrintDigitStore(), AliMpDEVisu::ProcessMessage(), AliMpDDLStore::SetManus(), AliMUONRejectList::SetPCBProbability(), AliMUONTriggerGUI::SetStripBoxes(), AliMUONDigitMaker::TriggerDigits(), AliMpDEVisu::UpdateComboCH(), and AliMpDEVisu::UpdateNameView().

const AliMpSector * AliMpSegmentation::GetSector ( const AliMpVSegmentation kSegmentation,
Bool_t  warn = true 
) const

Return sector for given mapping segmentation. If segmentation is not of sector type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 341 of file AliMpSegmentation.cxx.

Referenced by AliMUONSt1GeometryBuilderV2::CreateQuadrant(), GetSector(), AliMUONPainterHelper::GetSector(), and GetSectorByElectronics().

const AliMpSector * AliMpSegmentation::GetSector ( Int_t  detElemId,
AliMp::CathodType  cath,
Bool_t  warn = true 
) const

Return sector for given detElemId and cath. If segmentation is not of sector type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 389 of file AliMpSegmentation.cxx.

const AliMpSector * AliMpSegmentation::GetSectorByElectronics ( Int_t  detElemId,
Int_t  elCardID,
Bool_t  warn = true 
) const

Return sector for given detElemId and elCardID. If segmentation is not of sector type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 401 of file AliMpSegmentation.cxx.

Referenced by AliMpDCSNamer::ManuId2Sector().

const AliMpSlat * AliMpSegmentation::GetSlat ( const AliMpVSegmentation kSegmentation,
Bool_t  warn = true 
) const

Return slat for given mapping segmentation. If segmentation is not of slat type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 413 of file AliMpSegmentation.cxx.

Referenced by AliMpVPainter::CreatePainter(), GetSlat(), AliMUONPainterHelper::GetSlat(), GetSlatByElectronics(), AliMpDCSNamer::NumberOfPCBs(), AliMpBusPatch::SetNofManusPerModule(), and AliMUONRejectList::SetPCBProbability().

const AliMpSlat * AliMpSegmentation::GetSlat ( Int_t  detElemId,
AliMp::CathodType  cath,
Bool_t  warn = true 
) const

Return slat for given detElemId and cath. If segmentation is not of slat type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 462 of file AliMpSegmentation.cxx.

const AliMpSlat * AliMpSegmentation::GetSlatByElectronics ( Int_t  detElemId,
Int_t  elCardID,
Bool_t  warn = true 
) const

Return slat for given detElemId and elCardID. If segmentation is not of slat type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 474 of file AliMpSegmentation.cxx.

Referenced by AliMUONPainterHelper::GetSlat(), and AliMpDCSNamer::ManuId2PCBIndex().

const AliMpTrigger * AliMpSegmentation::GetTrigger ( const AliMpVSegmentation kSegmentation,
Bool_t  warn = true 
) const

Return trigger for given mapping segmentation. If segmentation is not of trigger type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 486 of file AliMpSegmentation.cxx.

Referenced by GetTrigger(), GetTriggerByElectronics(), AliMUONTriggerCircuit::LoadXPos(), and AliMUONTriggerCircuit::LoadYPos().

const AliMpTrigger * AliMpSegmentation::GetTrigger ( Int_t  detElemId,
AliMp::CathodType  cath,
Bool_t  warn = true 
) const

Return trigger for given detElemId and cath. If segmentation is not of trigger type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 537 of file AliMpSegmentation.cxx.

const AliMpTrigger * AliMpSegmentation::GetTriggerByElectronics ( Int_t  detElemId,
Int_t  elCardID,
Bool_t  warn = true 
) const

Return trigger for given detElemId and elCardID. If segmentation is not of trigger type, zero is returned and an Error is issued if warn is set true (default).

Definition at line 549 of file AliMpSegmentation.cxx.

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

Return its instance

Definition at line 72 of file AliMpSegmentation.cxx.

Referenced by AliMpDetElement::AddManu(), AliMpDDLStore::AliMpDDLStore(), AliMpDEVisu::AliMpDEVisu(), AliMUONVTrackReconstructor::ChangeMonoCathodClusterRes(), AliMUONTrackerLV::CheckLV(), AliMUONCDB::CheckMapping(), AliMUONCheck::CheckOccupancy(), AliMUONSimpleClusterServer::Clusterize(), AliMUONAlignmentCompareDialog::CompareAlignment(), AliMUONManuPadPainter::ComputeDataRange(), AliMUONGeometryTransformer::CreateDEAreas(), AliMUONTriggerGUI::CreateDigitStore(), AliMUONManuContourMaker::CreateManuContour(), AliMpVPainter::CreatePainter(), AliMUONSt1GeometryBuilderV2::CreateQuadrant(), AliMUONResponseTrigger::DisIntegrate(), AliMUONResponseTriggerV1::DisIntegrate(), AliMUONResponseV0::DisIntegrate(), AliMUONTriggerGUIbdmap::DrawDigits(), AliMUONTriggerGUIdimap::DrawMaps(), AliMUONTriggerGUIbdmap::DrawStrips(), AliMUONESDInterface::ESDToMUON(), AliMUONChamberCalibrationTask::Exec(), AliMUONTriggerElectronics::Feed(), AliMUONTrackHitPattern::FindMatchingPads(), AliMUONTrackHitPattern::FindPadMatchingTrack(), AliMUONTrackHitPattern::FindPadMatchingTrig(), AliMUONDigitizerV3::GenerateNoisyDigitsForOneCathode(), AliMUONDigitizerV3::GenerateNoisyDigitsForTrigger(), AliMUONQAMappingCheck::GetClusterLocation(), AliMUONPainterHelper::GetMotifPosition(), AliMUONTrackerData::GetParts(), AliMUONPainterHelper::GetSector(), AliMUONPainterHelper::GetSlat(), AliMUONTrackHitPattern::GetTrackParamAtChamber(), AliMUONTriggerUtilities::Init(), AliMUONTriggerGUI::InitBoards(), AliMUONTriggerDisplay::InitOrDisplayTriggerInfo(), AliMUONRecoCheck::IsHitInFrontOfPad(), AliMUONTrackHitPattern::IsMasked(), AliMpCDB::LoadManuStore(), AliMpCDB::LoadMpSegmentation(), AliMpCDB::LoadMpSegmentation2(), AliMUONTriggerCircuit::LoadXPos(), AliMUONTriggerCircuit::LoadYPos(), AliMUONTriggerQADataMakerRec::MakeRaws(), AliMUONRecoCheck::MakeReconstructibleTracks(), AliMUONRecoCheck::MakeTriggerableTracks(), AliMpDCSNamer::ManuId2PCBIndex(), AliMpDCSNamer::ManuId2Sector(), MUONClusterInfo(), AliMpDCSNamer::NumberOfPCBs(), AliMUONManuPadPainter::PadByPosition(), AliMUONTrackHitPattern::PadsFromPos(), AliMUONManuPadPainter::PaintArea(), AliMUONManuPadPainter::PaintOutline(), AliMUONCDB::Plot(), AliMUONTriggerGUI::PrintDigitStore(), AliMpDEVisu::ProcessMessage(), AliMUONDigitMaker::ReadTrackerDDL(), AliMpDDLStore::SetManus(), AliMpBusPatch::SetNofManusPerModule(), AliMUONRejectList::SetPCBProbability(), AliMUONTriggerGUI::SetStripBoxes(), AliMUONDigitMaker::TriggerDigits(), AliMpCDB::UnloadAll(), AliMpDEVisu::UpdateComboCH(), AliMpDEVisu::UpdateNameView(), AliMUONSimpleClusterServer::UseDigits(), and AliMpCDB::WriteMpSegmentation().

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

Not implemented.

void AliMpSegmentation::Print ( Option_t *  opt) const

Print the list of segmentations

Definition at line 560 of file AliMpSegmentation.cxx.

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

Member Data Documentation

AliMpDEStore* AliMpSegmentation::fDetElements
private

Detection element store.

Definition at line 121 of file AliMpSegmentation.h.

Referenced by AliMpSegmentation(), and ~AliMpSegmentation().

AliMpExMap AliMpSegmentation::fElCardsMap
private

Map of el. cards IDs to segmentations.

Definition at line 123 of file AliMpSegmentation.h.

Referenced by AliMpSegmentation(), FillElCardsMap(), and GetMpSegmentationByElectronics().

AliMpSegmentation * AliMpSegmentation::fgInstance = 0
staticprivate

Singleton instance.

Definition at line 118 of file AliMpSegmentation.h.

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

AliMpStringObjMap AliMpSegmentation::fMpSegmentations
private

Map of mapping segmentations to DE seg names.

Definition at line 122 of file AliMpSegmentation.h.

Referenced by CreateMpSegmentation(), GetMpSegmentation(), and Print().

AliMpSlatMotifMap* AliMpSegmentation::fSlatMotifMap
private

Map of motif, motifTypes to avoid duplications and allow proper deletion.

Definition at line 124 of file AliMpSegmentation.h.

Referenced by CreateMpSegmentation(), and ~AliMpSegmentation().


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