Adding Clear method (Laurent)
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 17 Jun 2007 21:04:13 +0000 (21:04 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sun, 17 Jun 2007 21:04:13 +0000 (21:04 +0000)
MUON/AliMUONTrack.cxx
MUON/AliMUONTrack.h

index 89da1fe..aaa733b 100644 (file)
@@ -87,7 +87,9 @@ AliMUONTrack::AliMUONTrack(AliMUONHitForRec* hitForRec1, AliMUONHitForRec* hitFo
   /// Constructor from thw hitForRec's
 
   fTrackParamAtHit = new TClonesArray("AliMUONTrackParam",10);
+  fTrackParamAtHit->SetOwner(kTRUE);
   fHitForRecAtHit = new TClonesArray("AliMUONHitForRec",10);
+  fHitForRecAtHit->SetOwner(kTRUE);
   
   if (!hitForRec1) return; //AZ
   
@@ -139,23 +141,9 @@ AliMUONTrack::AliMUONTrack(AliMUONHitForRec* hitForRec1, AliMUONHitForRec* hitFo
 AliMUONTrack::~AliMUONTrack()
 {
   /// Destructor
-  if (fTrackParamAtHit) {
-    // delete the TClonesArray of pointers to TrackParam
-    delete fTrackParamAtHit;
-    fTrackParamAtHit = 0x0;
-  }
-
-  if (fHitForRecAtHit) {
-    // delete the TClonesArray of pointers to HitForRec
-    delete fHitForRecAtHit;
-    fHitForRecAtHit = 0x0;
-  }
-  
-  if (fVertex) {
-    // delete the vertex used during the tracking procedure
-    delete fVertex;
-    fVertex = 0x0;
-  }
+  delete fTrackParamAtHit;
+  delete fHitForRecAtHit;  
+  delete fVertex;
 }
 
   //__________________________________________________________________________
@@ -307,6 +295,15 @@ void AliMUONTrack::AddHitForRecAtHit(const AliMUONHitForRec *hitForRec)
   new ((*fHitForRecAtHit)[fHitForRecAtHit->GetEntriesFast()]) AliMUONHitForRec(*hitForRec);
 }
 
+//__________________________________________________________________________
+void
+AliMUONTrack::Clear(Option_t* opt)
+{
+  /// Clear arrays
+  if ( fTrackParamAtHit ) fTrackParamAtHit->Clear(opt);
+  if ( fHitForRecAtHit ) fHitForRecAtHit->Clear(opt);
+}
+
   //__________________________________________________________________________
 void AliMUONTrack::SetVertex(AliMUONHitForRec* vertex)
 {
@@ -552,29 +549,16 @@ void AliMUONTrack::RecursiveDump(void) const
 }
   
 //_____________________________________________-
-void AliMUONTrack::Print(Option_t* opt) const
+void AliMUONTrack::Print(Option_t*) const
 {
   /// Printing Track information 
-  /// "full" option for printing all the information about the track
-  TString sopt(opt);
-  sopt.ToUpper();
-  if ( sopt.Contains("FULL") ) { 
-    cout << "<AliMUONTrack> No.Clusters=" << setw(2)   << GetNTrackHits() << 
-      //      ", Bending P="<< setw(8) << setprecision(5)      << 1./GetInverseBendingMomentum() << 
-      //", NonBendSlope=" << setw(8) << setprecision(5)  << GetNonBendingSlope()*180./TMath::Pi() <<
-      //", BendSlope=" << setw(8) << setprecision(5)     << GetBendingSlope()*180./TMath::Pi() <<
+
+  cout << "<AliMUONTrack> No.Clusters=" << setw(2)   << GetNTrackHits() << 
       ", Match2Trig=" << setw(1) << GetMatchTrigger()  << 
       ", LoTrgNum=" << setw(3) << GetLoTrgNum()  << 
-      ", Chi2-tracking-trigger=" << setw(8) << setprecision(5) <<  GetChi2MatchTrigger() << endl ;
-    GetTrackParamAtHit()->First()->Print("full");
-  }
-  else {
-    cout << "<AliMUONTrack>";
-    GetTrackParamAtHit()->First()->Print("");
-
-  }
-    
+    ", Chi2-tracking-trigger=" << setw(8) << setprecision(5) <<  GetChi2MatchTrigger();
+  cout << Form(" HitTriggerPattern %x",fHitsPatternInTrigCh) << endl;
+  GetTrackParamAtHit()->First()->Print("FULL");
 }
 
 //__________________________________________________________________________
index 8388bb7..57161df 100644 (file)
@@ -120,6 +120,7 @@ class AliMUONTrack : public TObject
 
   virtual void               Print(Option_t* opt="") const;
 
+  virtual void Clear(Option_t* opt="");
 
  private:
   static const Double_t fgkMaxTrackingDistanceBending;    ///< Maximum distance to the track to search for compatible hitForRec(s) in bending direction
@@ -148,7 +149,7 @@ class AliMUONTrack : public TObject
 
   Int_t fLocalTrigger;    ///< packed local trigger information
   
-  ClassDef(AliMUONTrack, 6) // Reconstructed track in ALICE dimuon spectrometer
+  ClassDef(AliMUONTrack,6) // Reconstructed track in ALICE dimuon spectrometer
 };
        
 #endif