3 // Test macro for reading sector, and iterate over it
5 class AliMpVPadIterator;
6 void MarkPads(AliMpVPadIterator& it,Int_t xmax,Int_t ymax,Bool_t print=kTRUE)
8 // This function works with pad iterator, no matter which kind of iterator
9 // it is. So it can be uses for drawing all pad of the sector (AliMpSectorPadIterator)
10 // or all pad around a given pad (AliMpNeighboursPadIterator), as with pads
11 // of a given motif type (AliMpMotifTypePadIterator)
15 for (it.First(); ! it.IsDone(); it.Next()){
16 AliMpIntPair indices = it.CurrentItem().GetIndices();
17 if (print) cout<<"Iterator number "<< num++ << " at "<< indices <<endl;
18 TMarker* marker = new TMarker( (Double_t)indices.GetFirst() /xmax,
19 (Double_t)indices.GetSecond()/ymax,
25 void testAnyPadIterators(AliMpStationType station = kStation1,
26 AliMpPlaneType plane = kBendingPlane,
27 Int_t i=50, Int_t j=50)
29 AliMpReader r(station, plane);
30 AliMpSector* sect = r.BuildSector();
32 TCanvas *canv = new TCanvas("canv");
37 MarkPads(AliMpSectorPadIterator(sect), 150,250,kFALSE);
39 AliMpVMotif* motif = sect->FindMotif(TVector2(200,30));
42 AliMpMotifType* motifType = motif->GetMotifType();
43 MarkPads(AliMpMotifTypePadIterator(motifType),15,15);
44 cout<<"______________ MotifType ____________________________"<<endl;
45 } else cout<<"No motif found at given position..."<<endl;
48 //MarkPads(*AliMpPadIteratorPtr(AliMpSectorSegmentation(sect)->CreateIterator(AliMpIntPair(i,j)))
49 AliMpSectorSegmentation segm(sect);
50 AliMpPad pad = segm.PadByIndices(AliMpIntPair(i,j));
51 MarkPads(AliMpNeighboursPadIterator(&AliMpSectorSegmentation(sect),pad)
53 cout<<"________________ Neighbours __________________________"<<endl;
55 Int_t motifPosId = 1010;
56 if (plane == kNonBendingPlane) motifPosId = 4010;
57 AliMpMotifPosition* motifPos = sect->GetMotifMap()->FindMotifPosition(motifPosId);
59 //MarkPads(*AliMpPadIteratorPtr(motifPos->CreateIterator()),15,15);
60 MarkPads(AliMpMotifPositionPadIterator(motifPos),15,15);
61 cout<<"_________________ MotifPosition _________________________"<<endl;