]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - HLT/global/AliFlatESDTrack.cxx
bug fixes: problem with v0s, if trackID != number of track, AliFlatESDFriend track...
[u/mrichter/AliRoot.git] / HLT / global / AliFlatESDTrack.cxx
index f8653ca079c1861f0c54b428de79a879c917795c..90c4e7636d7071a0864bdd6765e89bc6449d3417 100644 (file)
 #include "AliExternalTrackParam.h"
 #include "Riostream.h"
 
-// _______________________________________________________________________________________________________
-AliFlatESDTrack::AliFlatESDTrack() :
-  // Default constructor
-  fTrackParamMask(0),
-  fNTPCClusters(0),
-  fNITSClusters(0),
-  fContentSize(0)
-{
-}
+
+
 
 // _______________________________________________________________________________________________________
 
 
 // _______________________________________________________________________________________________________
-Int_t AliFlatESDTrack::Set(const AliESDtrack* track)
+Int_t AliFlatESDTrack::SetFromESDTrack(const AliESDtrack* track)
 {
   // Fill external track parameters 
   fTrackParamMask = 0;
@@ -66,7 +59,8 @@ Int_t AliFlatESDTrack::Set(const AliESDtrack* track)
                                         track->GetTPCInnerParam(),
                                         track->GetOuterParam(),
                                         track->GetConstrainedParam(), NULL );
-  fNITSClusters = track->GetTPCNcls();
+  fNTPCClusters = track->GetTPCNcls();
+  fNITSClusters = track->GetITSNcls();
 
   return iResult;
 }
@@ -113,28 +107,25 @@ Int_t AliFlatESDTrack::SetExternalTrackParam(
 Int_t AliFlatESDTrack::FillExternalTrackParam(const AliExternalTrackParam* param, UShort_t flag) {
   // Fill external track parameters
 
-  if (!param) 
-    return -1;
+  if (!param) return -1;
 
-  Printf("  DEBUG: CONTENT %d >> %p + 0x%07llx = %p", flag, fContent, fContentSize, fContent + fContentSize);
+  //Printf("  DEBUG: CONTENT %d >> %p + 0x%07llx = %p", flag, fContent, fContentSize, fContent + fContentSize);
 
   AliFlatExternalTrackParam * current = reinterpret_cast<AliFlatExternalTrackParam*> (fContent + fContentSize);
-  current->SetAlpha(param->GetAlpha());
-  current->SetX(param->GetX());
-  current->SetY(param->GetY());
-  current->SetZ(param->GetZ());
-  current->SetSnp(param->GetSnp());
-  current->SetTgl(param->GetTgl());
-  current->SetSigned1Pt(param->GetSigned1Pt());
-  
-  const Double_t *cov = param->GetCovariance();
-  for (Int_t idx = 0; idx <15; ++idx)
-    current->fC[idx] = cov[idx];
-    
+  current->SetExternalTrackParam( param );    
   fTrackParamMask |= flag;
   fContentSize += sizeof(AliFlatExternalTrackParam);
 
   return 0;
 }
 
+
 // _______________________________________________________________________________________________________
+Bool_t AliFlatESDTrack::GetXYZ(Double_t *p) const {
+  const AliFlatExternalTrackParam *f = GetFlatTrackParam();
+  if (!f) { return kFALSE; }
+  p[0]=f->GetX();
+  p[1]=f->GetY();
+  p[2]=f->GetZ();
+  return kTRUE;
+}