]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliESDMuonTrack.cxx
Adding extra logging level option to macro.
[u/mrichter/AliRoot.git] / STEER / AliESDMuonTrack.cxx
index 89dcf62d7bc2acfba5525c8d155a22d547fea084..a5aba1b6b4254a81f8b804f9e75fef62da43ab89 100644 (file)
@@ -37,18 +37,18 @@ ClassImp(AliESDMuonTrack)
 //_____________________________________________________________________________
 AliESDMuonTrack::AliESDMuonTrack ():
   AliVParticle(),
-  fInverseBendingMomentum(0),
+  fInverseBendingMomentum(FLT_MAX),
   fThetaX(0),
   fThetaY(0),
   fZ(0),
   fBendingCoor(0),
   fNonBendingCoor(0),
-  fInverseBendingMomentumAtDCA(0),
+  fInverseBendingMomentumAtDCA(FLT_MAX),
   fThetaXAtDCA(0),
   fThetaYAtDCA(0),
   fBendingCoorAtDCA(0),
   fNonBendingCoorAtDCA(0),
-  fInverseBendingMomentumUncorrected(0),
+  fInverseBendingMomentumUncorrected(FLT_MAX),
   fThetaXUncorrected(0),
   fThetaYUncorrected(0),
   fZUncorrected(0),
@@ -57,6 +57,14 @@ AliESDMuonTrack::AliESDMuonTrack ():
   fChi2(0),
   fChi2MatchTrigger(0),
   fLocalTrigger(0),
+  fX1Pattern(0),
+  fY1Pattern(0),
+  fX2Pattern(0),
+  fY2Pattern(0),
+  fX3Pattern(0),
+  fY3Pattern(0),
+  fX4Pattern(0),
+  fY4Pattern(0),
   fMuonClusterMap(0),
   fHitsPatternInTrigCh(0),
   fNHit(0),
@@ -92,6 +100,14 @@ AliESDMuonTrack::AliESDMuonTrack (const AliESDMuonTrack& muonTrack):
   fChi2(muonTrack.fChi2),
   fChi2MatchTrigger(muonTrack.fChi2MatchTrigger),
   fLocalTrigger(muonTrack.fLocalTrigger),
+  fX1Pattern(muonTrack.fX1Pattern),
+  fY1Pattern(muonTrack.fY1Pattern),
+  fX2Pattern(muonTrack.fX2Pattern),
+  fY2Pattern(muonTrack.fY2Pattern),
+  fX3Pattern(muonTrack.fX3Pattern),
+  fY3Pattern(muonTrack.fY3Pattern),
+  fX4Pattern(muonTrack.fX4Pattern),
+  fY4Pattern(muonTrack.fY4Pattern),
   fMuonClusterMap(muonTrack.fMuonClusterMap),
   fHitsPatternInTrigCh(muonTrack.fHitsPatternInTrigCh),
   fNHit(muonTrack.fNHit),
@@ -151,6 +167,14 @@ AliESDMuonTrack& AliESDMuonTrack::operator=(const AliESDMuonTrack& muonTrack)
   fNHit                   = muonTrack.fNHit; 
 
   fLocalTrigger           = muonTrack.fLocalTrigger;  
+  fX1Pattern              = muonTrack.fX1Pattern;  
+  fY1Pattern              = muonTrack.fY1Pattern;  
+  fX2Pattern              = muonTrack.fX2Pattern;  
+  fY2Pattern              = muonTrack.fY2Pattern;  
+  fX3Pattern              = muonTrack.fX3Pattern;  
+  fY3Pattern              = muonTrack.fY3Pattern;  
+  fX4Pattern              = muonTrack.fX4Pattern;  
+  fY4Pattern              = muonTrack.fY4Pattern;  
   fChi2MatchTrigger       = muonTrack.fChi2MatchTrigger; 
 
   fHitsPatternInTrigCh    = muonTrack.fHitsPatternInTrigCh;
@@ -171,6 +195,20 @@ AliESDMuonTrack& AliESDMuonTrack::operator=(const AliESDMuonTrack& muonTrack)
   return *this;
 }
 
+void AliESDMuonTrack::Copy(TObject &obj) const {
+  
+  // this overwrites the virtual TOBject::Copy()
+  // to allow run time copying without casting
+  // in AliESDEvent
+
+  if(this==&obj)return;
+  AliESDMuonTrack *robj = dynamic_cast<AliESDMuonTrack*>(&obj);
+  if(!robj)return; // not an AliESDMuonTrack
+  *robj = *this;
+
+}
+
+
 //__________________________________________________________________________
 AliESDMuonTrack::~AliESDMuonTrack()
 {
@@ -185,6 +223,46 @@ void AliESDMuonTrack::Clear(Option_t* opt)
   if (fClusters) fClusters->Clear(opt);
 }
 
+//__________________________________________________________________________
+void AliESDMuonTrack::Reset()
+{
+  /// Reset to default values
+  SetUniqueID(0);
+  fInverseBendingMomentum = FLT_MAX;
+  fThetaX = 0.;
+  fThetaY = 0.;
+  fZ = 0.;
+  fBendingCoor = 0.;
+  fNonBendingCoor = 0.;
+  fInverseBendingMomentumAtDCA = FLT_MAX;
+  fThetaXAtDCA = 0.;
+  fThetaYAtDCA = 0.;
+  fBendingCoorAtDCA = 0.;
+  fNonBendingCoorAtDCA = 0.;
+  fInverseBendingMomentumUncorrected = FLT_MAX;
+  fThetaXUncorrected = 0.;
+  fThetaYUncorrected = 0.;
+  fZUncorrected = 0.;
+  fBendingCoorUncorrected = 0.;
+  fNonBendingCoorUncorrected = 0.;
+  fChi2 = 0.;
+  fChi2MatchTrigger = 0.;
+  fLocalTrigger = 0;
+  fX1Pattern = 0;
+  fY1Pattern = 0;
+  fX2Pattern = 0;
+  fY2Pattern = 0;
+  fX3Pattern = 0;
+  fY3Pattern = 0;
+  fX4Pattern = 0;
+  fY4Pattern = 0;
+  fMuonClusterMap = 0;
+  fHitsPatternInTrigCh = 0;
+  fNHit = 0;
+  delete fClusters; fClusters = 0x0;
+  for (Int_t i = 0; i < 15; i++) fCovariances[i] = 0.;
+}
+
 //_____________________________________________________________________________
 void AliESDMuonTrack::GetCovariances(TMatrixD& cov) const
 {
@@ -443,28 +521,6 @@ Int_t AliESDMuonTrack::GetMatchTrigger() const
 
 }
 
-//_____________________________________________________________________________
-void AliESDMuonTrack::AddInMuonClusterMap(Int_t chamber)
-{
-  // Update the muon cluster map by adding this chamber(0..)
-  
-  static const UInt_t kMask[10] = {0x1, 0x2, 0x4, 0x8, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200};
-  
-  fMuonClusterMap |= kMask[chamber];
-  
-}
-
-//_____________________________________________________________________________
-Bool_t AliESDMuonTrack::IsInMuonClusterMap(Int_t chamber) const
-{
-  // return kTRUE if this chamber(0..) is in the muon cluster map
-  
-  static const UInt_t kMask[10] = {0x1, 0x2, 0x4, 0x8, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200};
-  
-  return ((fMuonClusterMap | kMask[chamber]) == fMuonClusterMap) ? kTRUE : kFALSE;
-  
-}
-
 //_____________________________________________________________________________
 Int_t AliESDMuonTrack::GetNClusters() const
 {