LCOV - code coverage report
Current view: top level - STEER/AOD - AliAODTrdTrack.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 4 26 15.4 %
Date: 2016-06-14 17:26:59 Functions: 7 30 23.3 %

          Line data    Source code
       1             : #ifndef ALIAODTRDTRACK_H
       2             : #define ALIAODTRDTRACK_H
       3             : 
       4             : //
       5             : // format for the TRD tracks calculated in the
       6             : // Global Tracking Unit, used for the TRD L1 trigger
       7             : // Author: Jochen Klein <jochen.klein@cern.ch>
       8             : 
       9             : #include "TRef.h"
      10             : #include "TClonesArray.h"
      11             : #include "AliVTrack.h"
      12             : #include "AliVTrdTrack.h"
      13             : #include "AliAODTrdTracklet.h"
      14             : 
      15             : class AliAODTrdTrack : public AliVTrdTrack {
      16             :  public:
      17             : 
      18             :   AliAODTrdTrack();
      19             :   AliAODTrdTrack(const AliVTrdTrack &rhs);
      20       13926 :   virtual ~AliAODTrdTrack() {};
      21             :   AliAODTrdTrack(const AliAODTrdTrack& track);
      22             :   AliAODTrdTrack& operator=(const AliAODTrdTrack& track);
      23             :   virtual void Copy(TObject &obj) const;
      24             : 
      25           0 :   virtual Int_t GetA()         const { return fA; }
      26           0 :   virtual Int_t GetLayerMask() const { return fLayerMask; }
      27           0 :   virtual Int_t GetPID()       const { return fPID; }
      28             :   virtual Int_t GetPt()        const;
      29           0 :   virtual Int_t GetStack()     const { return fGlobalStack%5; }
      30           0 :   virtual Int_t GetSector()    const { return fGlobalStack/5; }
      31             : 
      32           0 :   virtual Bool_t GetTrackInTime() const { return (fFlagsTiming & 0x1); }
      33           0 :   virtual UChar_t GetFlagsTiming() const { return fFlagsTiming; }
      34             : 
      35           0 :   virtual Int_t GetLabel()     const { return fLabel; }
      36             : 
      37           0 :   virtual Double_t Pt()        const { return GetPt() / 128.; }
      38             : 
      39             :   Int_t GetNTracklets() const {
      40             :     Int_t count = 0;
      41           0 :     for (Int_t iLayer = 0; iLayer < 6; ++iLayer)
      42           0 :       count += (fLayerMask >> iLayer) & 1;
      43           0 :     return count;
      44             :   }
      45           0 :   virtual AliAODTrdTracklet* GetTracklet(Int_t idx) const { return (AliAODTrdTracklet*) fTracklets[idx]; }
      46             : 
      47           0 :   virtual AliVTrack* GetTrackMatch() const { return (AliVTrack*) fTrackMatch.GetObject(); }
      48             : 
      49           0 :   virtual void SetA(Int_t a) { fA = a; }
      50           0 :   virtual void SetLayerMask(Int_t mask) { fLayerMask = mask; }
      51           0 :   virtual void SetPID(Int_t pid) { fPID = pid; }
      52           0 :   virtual void SetLabel(Int_t label) { fLabel = label; }
      53           0 :   virtual void SetSector(Int_t sector) { fGlobalStack = 5*sector + (fGlobalStack%5); }
      54           0 :   virtual void SetStack(Int_t stack) { fGlobalStack = 5*(fGlobalStack%5) + stack; }
      55             : 
      56         219 :   void AddTracklet(const AliVTrdTracklet& trkl, Int_t layer) { new (fTracklets[layer]) AliAODTrdTracklet(trkl); }
      57        4638 :   void SetTrackMatchReference(AliVTrack *trk) { fTrackMatch = trk; }
      58             : 
      59           0 :   virtual Bool_t IsSortable() const { return kFALSE; }
      60           0 :   virtual Int_t Compare(const TObject* /* obj */) const { return 0; }
      61             : 
      62             :  protected:
      63             : 
      64             :   Char_t   fGlobalStack;                  // stack (0-89) in which the track was found
      65             :                                           // (unique because of stack-wise tracking)
      66             :   UChar_t  fPID;                          // electron PID for this track
      67             :   UChar_t  fLayerMask;                    // mask of contributing tracklets
      68             :   Int_t    fA;                            // transverse offset from nominal primary vertex
      69             :   UChar_t  fFlagsTiming;                  // timing flags
      70             : 
      71             :   TClonesArray fTracklets;                // array of contributing tracklets
      72             :   TRef fTrackMatch;                       // reference to matched global track
      73             : 
      74             :   Int_t fLabel;                           // Track label
      75             : 
      76         178 :   ClassDef(AliAODTrdTrack,1)
      77             : };
      78             : 
      79             : #endif

Generated by: LCOV version 1.11