]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
added aliexternaltrackparam getters to flat esd tracks
authorsgorbuno <Sergey.Gorbunov@cern.ch>
Mon, 25 Aug 2014 14:56:37 +0000 (16:56 +0200)
committersgorbuno <Sergey.Gorbunov@cern.ch>
Mon, 25 Aug 2014 14:56:37 +0000 (16:56 +0200)
HLT/global/AliFlatESDEvent.cxx
HLT/global/AliFlatESDTrack.cxx
HLT/global/AliFlatESDTrack.h
HLT/global/AliFlatESDVertex.h
HLT/global/AliFlatExternalTrackParam.h
HLT/global/AliHLTGlobalFlatEsdTestComponent.cxx
TPC/Calib/AliAnalysisTaskPt.h

index b3ee7adb723cbc01e1958e21dd274729b3e35b86..b11c3a6fcbb5e97ef08d085d34d5077e3095805a 100644 (file)
@@ -231,7 +231,7 @@ Int_t AliFlatESDEvent::SetPrimaryVertexTracks( const AliESDVertex *vtx, size_t a
   fPrimaryVertexMask |= 0x1;
   fPrimaryVertexTracksPointer = fContentSize;
   AliFlatESDVertex *flatVtx = reinterpret_cast<AliFlatESDVertex*> (fContent + fContentSize);
-  flatVtx->Set( *vtx );
+  flatVtx->SetFromESDVertex( *vtx );
   fContentSize += flatVtx->GetSize();
   return 0;
 }
@@ -244,7 +244,7 @@ Int_t AliFlatESDEvent::SetPrimaryVertexSPD( const AliESDVertex *vtx, size_t allo
   fPrimaryVertexMask |= 0x2;
   fPrimaryVertexSPDPointer = fContentSize;
   AliFlatESDVertex *flatVtx = reinterpret_cast<AliFlatESDVertex*> (fContent + fContentSize);
-  flatVtx->Set( *vtx );
+  flatVtx->SetFromESDVertex( *vtx );
   fContentSize += flatVtx->GetSize();
   return 0;
 }
@@ -328,7 +328,7 @@ Int_t AliFlatESDEvent::SetFromESD( const size_t allocatedMemorySize, const AliES
        table[idxTrack] = trackSize;
        if( freeSpace<flatTrack->EstimateSize() ) return -1;
        new (flatTrack) AliFlatESDTrack;       
-       flatTrack->Set( esdTrack );
+       flatTrack->SetFromESDTrack( esdTrack );
        trackSize += flatTrack->GetSize();
        freeSpace -= flatTrack->GetSize();
        nTracks++;
index 7fed28cab4f7a62a2e211a00770075c3ea4573dd..24d05fad3d87d0c0b0396f77845a3958acf63afc 100644 (file)
@@ -63,7 +63,7 @@ AliFlatESDTrack::AliFlatESDTrack( AliVVConstructorReinitialisationFlag f )
 
 
 // _______________________________________________________________________________________________________
-Int_t AliFlatESDTrack::Set(const AliESDtrack* track)
+Int_t AliFlatESDTrack::SetFromESDTrack(const AliESDtrack* track)
 {
   // Fill external track parameters 
   fTrackParamMask = 0;
@@ -149,4 +149,5 @@ Int_t AliFlatESDTrack::FillExternalTrackParam(const AliExternalTrackParam* param
   return 0;
 }
 
+
 // _______________________________________________________________________________________________________
index 4f8038fc0228fd2eb8bf7c3227775212da2ab9bf..176d038f025dc0130e73319e4043fc91123df2d0 100644 (file)
@@ -36,10 +36,28 @@ class AliFlatESDTrack :public AliVVtrack {
   AliFlatESDTrack( AliVVConstructorReinitialisationFlag );
   void Reinitialize() { new (this) AliFlatESDTrack( AliVVReinitialize ); }
 
- // --------------------------------------------------------------------------------
+  // --------------------   AliVVtrack interface    ---------------------------------
+
+  Int_t GetTrackParam         ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x0  ); }
+  Int_t GetTrackParamRefitted ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x1  ); }
+  Int_t GetTrackParamIp       ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x2  ); }
+  Int_t GetTrackParamTPCInner ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x4  ); }
+  Int_t GetTrackParamOp       ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x8  ); }
+  Int_t GetTrackParamCp       ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x10 ); }
+  Int_t GetTrackParamITSOut   ( AliExternalTrackParam &p ) const { return GetExternalTrackParam( p, 0x20 ); }
+
+  UShort_t GetTPCNcls() const {return GetNumberOfTPCClusters(); }
+  Double_t GetPt() const {
+    const AliFlatExternalTrackParam *f = GetFlatTrackParam();
+    return (f) ?f->GetPt() : kVeryBig;
+  }
+  
+
+  // --------------------------------------------------------------------------------
+
   // -- Set methods
  
-  Int_t Set( const AliESDtrack* track );
+  Int_t SetFromESDTrack( const AliESDtrack* track );
 
   Int_t SetExternalTrackParam( 
                              const AliExternalTrackParam* refittedParam,
@@ -56,39 +74,19 @@ class AliFlatESDTrack :public AliVVtrack {
   
   // --------------------------------------------------------------------------------
   // -- Getter methods
-  AliFlatExternalTrackParam* GetTrackParamRefitted(){
-    return (fTrackParamMask & 0x1) ? reinterpret_cast<AliFlatExternalTrackParam*>(fContent) : NULL;
-  } 
-
-  AliFlatExternalTrackParam* GetTrackParamIp() { 
-    return (fTrackParamMask & 0x2) ? reinterpret_cast<AliFlatExternalTrackParam*>(fContent) + CountBits(fTrackParamMask, 0x1) : NULL;
-  } 
-
-  AliFlatExternalTrackParam* GetTrackParamTPCInner() { 
-    return (fTrackParamMask & 0x4) ? reinterpret_cast<AliFlatExternalTrackParam*>(fContent) + CountBits(fTrackParamMask, 0x3) : NULL;
-  } 
-
-  AliFlatExternalTrackParam* GetTrackParamOp() {      
-    return (fTrackParamMask & 0x8) ? reinterpret_cast<AliFlatExternalTrackParam*>(fContent) + CountBits(fTrackParamMask, 0x7) : NULL;
-  } 
-
-  AliFlatExternalTrackParam* GetTrackParamCp() {
-    return (fTrackParamMask & 0x10) ? reinterpret_cast<AliFlatExternalTrackParam*>(fContent) + CountBits(fTrackParamMask, 0xF) : NULL;
-  } 
 
-  AliFlatExternalTrackParam* GetTrackParamITSOut() {
-    return (fTrackParamMask & 0x20) ? reinterpret_cast<AliFlatExternalTrackParam*>(fContent) + CountBits(fTrackParamMask, 0x1F) : NULL;
-  } 
+  const AliFlatExternalTrackParam* GetFlatTrackParam()         const { return GetFlatParam( 0x0  ); }
+  const AliFlatExternalTrackParam* GetFlatTrackParamRefitted() const { return GetFlatParam( 0x1  ); }
+  const AliFlatExternalTrackParam* GetFlatTrackParamIp()       const { return GetFlatParam( 0x2  ); } 
+  const AliFlatExternalTrackParam* GetFlatTrackParamTPCInner() const { return GetFlatParam( 0x4  ); } 
+  const AliFlatExternalTrackParam* GetFlatTrackParamOp()       const { return GetFlatParam( 0x8  ); }     
+  const AliFlatExternalTrackParam* GetFlatTrackParamCp()       const { return GetFlatParam( 0x10 ); }
+  const AliFlatExternalTrackParam* GetFlatTrackParamITSOut()   const { return GetFlatParam( 0x20 ); }
 
   // --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  
 
-  Int_t GetNumberOfTPCClusters() {
-    return fNTPCClusters;
-  } 
-  
-  Int_t GetNumberOfITSClusters() {
-    return fNITSClusters;
-  } 
+  Int_t GetNumberOfTPCClusters() const { return fNTPCClusters; } 
+  Int_t GetNumberOfITSClusters() const { return fNITSClusters; } 
     
   // --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  --  
   
@@ -105,9 +103,17 @@ class AliFlatESDTrack :public AliVVtrack {
   size_t GetSize() { return fContent -  reinterpret_cast<Byte_t*>(this) + fContentSize; }
     
  private:
+
   AliFlatESDTrack(const AliFlatESDTrack&);
   AliFlatESDTrack& operator=(const AliFlatESDTrack&);
 
+  const AliFlatExternalTrackParam* GetFlatParam( UShort_t flag ) const {
+    if( flag==0 ) return ( fTrackParamMask ) ? reinterpret_cast<const AliFlatExternalTrackParam*>(fContent) : NULL;
+    else return (fTrackParamMask & flag) ? reinterpret_cast<const AliFlatExternalTrackParam*>(fContent) + CountBits(fTrackParamMask, flag-1) : NULL;
+  }
+
+  Int_t GetExternalTrackParam( AliExternalTrackParam &p, UShort_t flag  ) const;
+
   Int_t FillExternalTrackParam(const AliExternalTrackParam* param, UShort_t flag);
 
   static UInt_t CountBits(Byte_t field, UInt_t mask = 0xFFFFFFFF);
@@ -136,4 +142,15 @@ inline UInt_t AliFlatESDTrack::CountBits(Byte_t field, UInt_t mask) {
   return count;
 }
 
+inline Int_t AliFlatESDTrack::GetExternalTrackParam( AliExternalTrackParam &p, UShort_t flag) const
+{
+  // Get external track parameters  
+  const AliFlatExternalTrackParam *f = GetFlatParam ( flag );
+  if( !f ) return -1;  
+  Float_t par[5] = { f->GetY(), f->GetZ(), f->GetSnp(), f->GetTgl(), f->GetSigned1Pt() };
+  p.Set( f->GetX(), f->GetAlpha(), par, f->GetCov() );
+  return 0;
+}
+
+
 #endif
index d627f9142687468de0f8410f24cf55cb1f96d439..bd1c64a0ccecdd9acf4929c33d7ae6a4e22952ac 100644 (file)
@@ -37,7 +37,7 @@ struct AliFlatESDVertex
   */
 
 
-  void Set(const AliESDVertex &v );
+  void SetFromESDVertex(const AliESDVertex &v );
   void GetESDVertex( AliESDVertex &v ) const;
 
   Double32_t GetX() const { return fPosition[0]; }
@@ -118,7 +118,7 @@ fChi2(fChi2)
   for( int i=0; i<6; i++) fCov[i] = fCov[i];
 }
 
-inline void AliFlatESDVertex::Set(const AliESDVertex &v )
+inline void AliFlatESDVertex::SetFromESDVertex(const AliESDVertex &v )
 {
   fPosition[0] = v.GetX();
   fPosition[1] = v.GetY();
index 20745d06c392db64ad786dd95a85b0c914a6890d..0a0a85b435f3d914377eaec2f8ba9fd40df989e8 100644 (file)
@@ -10,6 +10,7 @@
  */
 
 #include "Rtypes.h"
+#include "AliExternalTrackParam.h"
 
 struct AliFlatExternalTrackParam
 {
@@ -40,6 +41,11 @@ struct AliFlatExternalTrackParam
   Float_t  GetSigned1Pt()         const {return fSigned1Pt;}
   Float_t* GetCov()               const {return const_cast<Float_t*>(fC);}
   Float_t  GetCovEntry(Int_t idx) const {return (idx >= 0 && idx < 15) ? fC[idx] : 0.;}
+  Float_t  GetPt()                const {
+    Double_t pt1 = fabs( fSigned1Pt );
+    return (pt1>kAlmost0) ? 1./pt1 : kVeryBig;
+  } 
+  void GetExternalTrackParam( AliExternalTrackParam &p ) const;
 };
 
 typedef struct AliFlatExternalTrackParam AliFlatExternalTrackParam;
index b2e9f1ea4cb0939a5e6f189c8ef8e21846a0f931..981f7d545ffeb67f2d3b03e34df270ffe65f886e 100644 (file)
@@ -248,9 +248,9 @@ int AliHLTGlobalFlatEsdTestComponent::DoDeinit()
 int AliHLTGlobalFlatEsdTestComponent::DoEvent( const AliHLTComponentEventData& /*evtData*/,
                                                    const AliHLTComponentBlockData* /*blocks*/, 
                                                    AliHLTComponentTriggerData& /*trigData*/,
-                                                   AliHLTUInt8_t* outputPtr
+                                                   AliHLTUInt8_t* /*outputPtr*/
                                                    AliHLTUInt32_t& size,
-                                                   AliHLTComponentBlockDataList& outputBlocks )
+                                                   AliHLTComponentBlockDataList& /*outputBlocks*/ )
 {
   // see header file for class documentation
   int iResult=0;
@@ -260,7 +260,6 @@ int AliHLTGlobalFlatEsdTestComponent::DoEvent( const AliHLTComponentEventData& /
   fBenchmark.StartNewEvent();
   fBenchmark.Start(0);
 
-  size_t maxOutputSize = size;
   size = 0;
 
   for ( const TObject *iter = GetFirstInputObject(kAliHLTDataTypeESDObject | kAliHLTDataOriginOut); iter != NULL; iter = GetNextInputObject() ) {
index 34819261804298bf5bfbb65de89d1d8528220339..326cf54958f7658ba9d373edfd13abeaa6cffa2f 100644 (file)
@@ -15,7 +15,7 @@ class TList;
 
 class AliAnalysisTaskPt : public AliAnalysisTask {
  public:
- AliAnalysisTaskPt() : AliAnalysisTask(), fESD(0), fESDfriend(0), fHistPt(0), fCuts(0), fEv(0), fHistQ(0), fListOut(0), fHistNTPCCl(0), fHistNESDtracks(0), fHistNESDfriendtracks(0) 
+ AliAnalysisTaskPt() : AliAnalysisTask(), fESD(0), fESDfriend(0), fHistPt(0), fCuts(0), fEv(0), fHistQ(0), fListOut(0), fUseFriends(0), fHistNTPCCl(0), fHistNESDtracks(0), fHistNESDfriendtracks(0) 
  {}
   AliAnalysisTaskPt(const char *name);
   virtual ~AliAnalysisTaskPt() {}