ClassImp(AliMUONContourMaker)
/// \endcond
-namespace
-{
- void PrintSegments(const TObjArray& array)
- {
- TIter next(&array);
- AliMUONSegment* s;
- Int_t i(0);
- while ( ( s = static_cast<AliMUONSegment*>(next()) ) )
- {
- cout << Form("i=%d %s",i,s->AsString()) << endl;
- ++i;
- }
- }
-}
-
//_____________________________________________________________________________
AliMUONContourMaker::AliMUONContourMaker()
{
/// and get back the intermediate verticals and horizontal segments
/// both arrays are arrays of AliMUONSegment objects.
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
if ( polygons.IsEmpty() ) return 0x0; // protection against user error...
if ( polygons.GetLast() == 0 )
{
- AliCodeTimerAuto("Trivial case",0);
+ AliCodeTimerAuto("Trivial case",1);
contour = new AliMUONContour(name);
pol = static_cast<AliMUONPolygon*>(polygons.First());
contour->Add(*pol);
if ( polygonVerticalEdges.GetLast()+1 < 2 )
{
- AliError(Form("Got too few edges here for createContour %s",name));
polygons.Print();
- TObject* o(0x0);
- o->Print();
+ AliFatal(Form("Got too few edges here for createContour %s",name));
}
// Find the vertical edges of the merged contour. This is the meat of the algorithm...
/// For a list of vertical and horizontal edges, we build the final
/// contour object.
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
TObjArray all; // array of AliMUONSegment
TObjArray inorder; // array of AliMUONSegment
/// From an array of polygons, extract the list of vertical edges.
/// Output array polygonVerticalEdges should be empty before calling.
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
for ( Int_t i = 0; i <= polygons.GetLast(); ++i )
{
/// Fill the array yPositions with the different y positions found in
/// polygonVerticalEdges
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
Double_t* y = new Double_t[polygonVerticalEdges.GetSize()*2];
Int_t n(0);
{
/// Merge all the polygons of all contours into a single contour
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
TObjArray polygons;
polygons.SetOwner(kTRUE);
/// then on abcissa, and put them in output vector sortedPoints.
/// Output array sortedPoints should be empty before calling this method.
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
for ( Int_t i = 0; i <= polygonVerticalEdges.GetLast(); ++i )
{
{
/// This is the meat of the algorithm of the contour merging...
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
TArrayD yPositions;
GetYPositions(polygonVerticalEdges,yPositions);
/// Deduce the set of horizontal edges from the vertical edges
/// Output array horizontalEdges should be empty before calling this method
- AliCodeTimerAuto("",);
+ AliCodeTimerAuto("",0);
TObjArray points; // array of AliMUONPointWithRef
points.SetOwner(kTRUE);