![]() |
AliRoot Core
3dc7879 (3dc7879)
|
A sector (quadrant) of the MUON chamber of stations 1 and 2. More...
#include <AliMpSector.h>
Public Member Functions | |
AliMpSector (const TString &id, Int_t nofZones, Int_t nofRows, AliMp::Direction direction, Double_t offsetx, Double_t offsety) | |
AliMpSector () | |
virtual | ~AliMpSector () |
virtual AliMpVPadIterator * | CreateIterator () const |
void | SetRowSegmentOffsets () |
void | Initialize () |
void | PrintGeometry () const |
Int_t | FindMotifPositionId (Double_t x, Double_t y) const |
AliMpRow * | FindRow (Int_t motifPositionId) const |
AliMpVRowSegment * | FindRowSegment (Int_t motifPositionId) const |
Double_t | GetPositionX () const |
Double_t | GetPositionY () const |
Double_t | GetDimensionX () const |
Double_t | GetDimensionY () const |
Int_t | GetNofZones () const |
AliMpZone * | GetZone (Int_t i) const |
Int_t | GetNofRows () const |
AliMpRow * | GetRow (Int_t i) const |
AliMp::Direction | GetDirection () const |
Return the direction of constant pad size. More... | |
AliMp::PlaneType | GetPlaneType () const |
Double_t | GetMinPadDimensionX () const |
Return minimum x pad dimensions. More... | |
Double_t | GetMinPadDimensionY () const |
Return maximum y pad dimensions. More... | |
Double_t | GetMaxPadDimensionX () const |
Return maximum x pad dimensions. More... | |
Double_t | GetMaxPadDimensionY () const |
Return minimum y pad dimensions. More... | |
MpPair_t | GetMaxPadIndices () const |
Return maximum pad indices. More... | |
Int_t | GetNofPads () const |
Return total number of pads. More... | |
AliMpMotifMap * | GetMotifMap () const |
Return the motif map. More... | |
Int_t | GetNofMotifPositions () const |
void | GetAllMotifPositionsIDs (TArrayI &ecn) const |
virtual void | Print (Option_t *opt="") const |
Private Member Functions | |
AliMpSector (const AliMpSector &right) | |
Not implemented. More... | |
AliMpSector & | operator= (const AliMpSector &right) |
Not implemented. More... | |
AliMpRow * | FindRow (Double_t y) const |
AliMpVRowSegment * | FindRowSegment (Double_t x, Double_t y) const |
void | SetRowOffsets () |
void | SetMotifPositions () |
void | SetGlobalIndices () |
void | SetMinMaxPadDimensions () |
void | SetMaxPadIndices () |
void | SetNofPads () |
void | SetDimensions () |
Private Attributes | |
TString | fID |
sector ID More... | |
Double_t | fOffsetX |
sector x position More... | |
Double_t | fOffsetY |
sector y position More... | |
Double_t | fDimensionX |
sector x dimension More... | |
Double_t | fDimensionY |
sector y dimension More... | |
TObjArray | fZones |
zones More... | |
TObjArray | fRows |
rows More... | |
AliMpMotifMap * | fMotifMap |
motif map More... | |
AliMp::Direction | fDirection |
the direction of constant pad size More... | |
Double_t | fMinPadDimensionX |
minimum pad x dimensions More... | |
Double_t | fMinPadDimensionY |
minimum pad y dimensions More... | |
Double_t | fMaxPadDimensionX |
miximum pad x dimensions More... | |
Double_t | fMaxPadDimensionY |
miximum pad y dimensions More... | |
MpPair_t | fLMaxPadIndices |
maximum pad indices More... | |
Int_t | fNofPads |
total number of pads More... | |
A sector (quadrant) of the MUON chamber of stations 1 and 2.
Definition at line 34 of file AliMpSector.h.
AliMpSector::AliMpSector | ( | const TString & | id, |
Int_t | nofZones, | ||
Int_t | nofRows, | ||
AliMp::Direction | direction, | ||
Double_t | offsetx, | ||
Double_t | offsety | ||
) |
Standard constructor
Definition at line 49 of file AliMpSector.cxx.
AliMpSector::AliMpSector | ( | ) |
Default constructor
Definition at line 84 of file AliMpSector.cxx.
|
virtual |
Destructor
Definition at line 108 of file AliMpSector.cxx.
|
private |
Not implemented.
|
virtual |
Create sector pad iterator
Definition at line 288 of file AliMpSector.cxx.
Int_t AliMpSector::FindMotifPositionId | ( | Double_t | x, |
Double_t | y | ||
) | const |
Find the motif position ID in the specified position.
Return 0 if no motif is found.
Definition at line 144 of file AliMpSector.cxx.
Referenced by AliMpSectorSegmentation::PadByPosition().
AliMpRow * AliMpSector::FindRow | ( | Int_t | motifPositionId | ) | const |
Find the row with the the specified motif position.
Return 0 if no row is found.
Definition at line 347 of file AliMpSector.cxx.
Referenced by FindRowSegment().
|
private |
Find the row for the specified y position.
If y is on border the lowest row is returned.
Definition at line 129 of file AliMpSector.cxx.
AliMpVRowSegment * AliMpSector::FindRowSegment | ( | Int_t | motifPositionId | ) | const |
Find the row segment with the the specified motif position.
Return 0 if no row segment is found.
Definition at line 360 of file AliMpSector.cxx.
Referenced by FindMotifPositionId(), and FindRow().
|
private |
Find the row segment in the specified position.
Return if no motif is found.
Definition at line 159 of file AliMpSector.cxx.
void AliMpSector::GetAllMotifPositionsIDs | ( | TArrayI & | ecn | ) | const |
Return the array of all motif positions IDs
Definition at line 473 of file AliMpSector.cxx.
Referenced by AliMpSectorSegmentation::GetAllElectronicCardIDs().
Double_t AliMpSector::GetDimensionX | ( | ) | const |
Return the maximum halflengths in x.
Definition at line 396 of file AliMpSector.cxx.
Referenced by AliMUONDEPainter::AliMUONDEPainter(), AliMpSectorSegmentation::GetDimensionX(), and SetDimensions().
Double_t AliMpSector::GetDimensionY | ( | ) | const |
Return the maximum halflengths in y.
Definition at line 404 of file AliMpSector.cxx.
Referenced by AliMUONDEPainter::AliMUONDEPainter(), and AliMpSectorSegmentation::GetDimensionY().
|
inline |
Return the direction of constant pad size.
Definition at line 131 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::CreateIterator(), AliMpSectorSegmentation::FindMotifPosition(), GetPlaneType(), AliMpSectorSegmentation::PadByDirection(), and AliMUONSt1GeometryBuilderV2::PlaceSector().
|
inline |
Return maximum x pad dimensions.
Definition at line 143 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::PadByXDirection().
|
inline |
Return minimum y pad dimensions.
Definition at line 147 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::PadByYDirection().
|
inline |
Return maximum pad indices.
Definition at line 151 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::MaxPadIndexX(), and AliMpSectorSegmentation::MaxPadIndexY().
|
inline |
Return minimum x pad dimensions.
Definition at line 135 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::GetMinPadDimensionX(), and AliMpSectorSegmentation::PadByXDirection().
|
inline |
Return maximum y pad dimensions.
Definition at line 139 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::GetMinPadDimensionY(), and AliMpSectorSegmentation::PadByYDirection().
|
inline |
Return the motif map.
Definition at line 159 of file AliMpSector.h.
Referenced by AliMpDEVisu::DrawQuadrant(), AliMpSectorSegmentation::FindMotifPosition(), AliMpSectorSegmentation::HasPadByLocation(), AliMpDCSNamer::ManuId2Sector(), AliMpSectorSegmentation::MotifPosition(), AliMpSectorSegmentation::PadByLocation(), AliMpSectorSegmentation::PadByPosition(), AliMUONSt1GeometryBuilderV2::PlaceSector(), AliMpSectorReader::ReadMotifData(), AliMpSectorReader::ReadRowSegmentSpecialData(), and AliMpSectorPadIterator::ResetToCurrentMotifPosition().
Int_t AliMpSector::GetNofMotifPositions | ( | ) | const |
Return the number of manus
Definition at line 464 of file AliMpSector.cxx.
Referenced by AliMpSectorSegmentation::GetNofElectronicCards().
|
inline |
Return total number of pads.
Definition at line 155 of file AliMpSector.h.
Referenced by AliMpSectorSegmentation::NofPads().
Int_t AliMpSector::GetNofRows | ( | ) | const |
Return the number of rows.
Definition at line 433 of file AliMpSector.cxx.
Referenced by AliMpSectorPainter::Draw(), AliMpSectorSegmentation::FindMotifPosition(), FindRow(), FindRowSegment(), AliMpSectorPainter::GetDimensions(), AliMpSectorPainter::GetPosition(), GetRow(), AliMpSectorPainter::Paint(), AliMUONSt1GeometryBuilderV2::PlaceSector(), AliMpDEVisu::PopUpManuMotif(), PrintGeometry(), SetDimensions(), SetGlobalIndices(), SetMaxPadIndices(), SetMotifPositions(), SetRowOffsets(), SetRowSegmentOffsets(), and ~AliMpSector().
Int_t AliMpSector::GetNofZones | ( | ) | const |
Return the number of zones.
Definition at line 412 of file AliMpSector.cxx.
Referenced by AliMpSectorPainter::Draw(), GetZone(), SetMinMaxPadDimensions(), and ~AliMpSector().
AliMp::PlaneType AliMpSector::GetPlaneType | ( | ) | const |
Return the plane type
Definition at line 455 of file AliMpSector.cxx.
Referenced by AliMpSectorSegmentation::PlaneType(), and Print().
Double_t AliMpSector::GetPositionX | ( | ) | const |
Return the sector offset.
Definition at line 379 of file AliMpSector.cxx.
Referenced by AliMUONSt1GeometryBuilderV2::CreateQuadrant().
Double_t AliMpSector::GetPositionY | ( | ) | const |
Return the sector offset.
Definition at line 388 of file AliMpSector.cxx.
Referenced by AliMUONSt1GeometryBuilderV2::CreateQuadrant().
AliMpRow * AliMpSector::GetRow | ( | Int_t | i | ) | const |
Return row with specified ID.
Definition at line 441 of file AliMpSector.cxx.
Referenced by AliMpSectorPainter::Draw(), AliMpSectorSegmentation::FindMotifPosition(), AliMpSectorPainter::GetDimensions(), AliMpSectorPainter::GetPosition(), AliMpSectorPainter::Paint(), AliMUONSt1GeometryBuilderV2::PlaceSector(), AliMpDEVisu::PopUpManuMotif(), PrintGeometry(), AliMpSectorReader::ReadRowSegmentsData(), AliMpSectorReader::ReadRowSpecialData(), SetGlobalIndices(), SetMaxPadIndices(), SetMotifPositions(), SetRowOffsets(), and SetRowSegmentOffsets().
AliMpZone * AliMpSector::GetZone | ( | Int_t | i | ) | const |
Return zone with specified ID.
Definition at line 420 of file AliMpSector.cxx.
Referenced by AliMpSectorPainter::Draw(), AliMpSectorReader::ReadMotifsSpecialData(), AliMpSectorReader::ReadRowSpecialData(), AliMpSectorReader::ReadZoneData(), and SetMinMaxPadDimensions().
void AliMpSector::Initialize | ( | ) |
Make needed settings after sector is read from data files.
Definition at line 306 of file AliMpSector.cxx.
Referenced by AliMpSectorReader::BuildSector().
|
private |
Not implemented.
|
virtual |
Print the map of motifs
Definition at line 482 of file AliMpSector.cxx.
Referenced by AliMpSectorSegmentation::Print().
void AliMpSector::PrintGeometry | ( | ) | const |
Print the positions of rows, rows segments
Definition at line 321 of file AliMpSector.cxx.
|
private |
Set the maximum halflengths in x, y.
Definition at line 265 of file AliMpSector.cxx.
Referenced by Initialize().
|
private |
Set the indices limits to all indexed elements (row, row segment, motif positions).
Definition at line 197 of file AliMpSector.cxx.
Referenced by Initialize().
|
private |
Set maximum pad indices in x, y
Definition at line 235 of file AliMpSector.cxx.
Referenced by Initialize().
|
private |
Set the minimal pad dimensions.
Definition at line 210 of file AliMpSector.cxx.
Referenced by Initialize().
|
private |
Create motif positions objects and fills them in the motif map.
Definition at line 188 of file AliMpSector.cxx.
Referenced by Initialize().
|
private |
Set the total number of pads
Definition at line 257 of file AliMpSector.cxx.
Referenced by Initialize().
|
private |
For each row check consitency of the row segments and calculate the row offset.
Definition at line 176 of file AliMpSector.cxx.
Referenced by Initialize().
void AliMpSector::SetRowSegmentOffsets | ( | ) |
For all rows set the offset to all row segments.
Definition at line 297 of file AliMpSector.cxx.
Referenced by AliMpSectorReader::BuildSector().
|
private |
sector x dimension
Definition at line 112 of file AliMpSector.h.
Referenced by GetDimensionX(), and SetDimensions().
|
private |
sector y dimension
Definition at line 113 of file AliMpSector.h.
Referenced by GetDimensionY(), and SetDimensions().
|
private |
the direction of constant pad size
Definition at line 117 of file AliMpSector.h.
Referenced by GetDirection(), SetGlobalIndices(), and SetMinMaxPadDimensions().
|
private |
sector ID
Definition at line 109 of file AliMpSector.h.
|
private |
maximum pad indices
Definition at line 122 of file AliMpSector.h.
Referenced by GetMaxPadIndices(), and SetMaxPadIndices().
|
private |
miximum pad x dimensions
Definition at line 120 of file AliMpSector.h.
Referenced by GetMaxPadDimensionX(), and SetMinMaxPadDimensions().
|
private |
miximum pad y dimensions
Definition at line 121 of file AliMpSector.h.
Referenced by GetMaxPadDimensionY(), and SetMinMaxPadDimensions().
|
private |
minimum pad x dimensions
Definition at line 118 of file AliMpSector.h.
Referenced by GetMinPadDimensionX(), and SetMinMaxPadDimensions().
|
private |
minimum pad y dimensions
Definition at line 119 of file AliMpSector.h.
Referenced by GetMinPadDimensionY(), and SetMinMaxPadDimensions().
|
private |
motif map
Definition at line 116 of file AliMpSector.h.
Referenced by GetAllMotifPositionsIDs(), GetMotifMap(), GetNofMotifPositions(), Print(), SetNofPads(), and ~AliMpSector().
|
private |
total number of pads
Definition at line 123 of file AliMpSector.h.
Referenced by GetNofPads(), and SetNofPads().
|
private |
sector x position
Definition at line 110 of file AliMpSector.h.
Referenced by GetPositionX(), and SetRowSegmentOffsets().
|
private |
sector y position
Definition at line 111 of file AliMpSector.h.
Referenced by GetPositionY(), and SetRowOffsets().
|
private |
rows
Definition at line 115 of file AliMpSector.h.
Referenced by FindRow(), FindRowSegment(), GetNofRows(), GetRow(), SetDimensions(), and ~AliMpSector().
|
private |
zones
Definition at line 114 of file AliMpSector.h.
Referenced by GetNofZones(), GetZone(), and ~AliMpSector().