LCOV - code coverage report
Current view: top level - HLT/TPCLib/tracking-ca - AliHLTTPCCADisplay.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 0 2 0.0 %
Date: 2016-06-14 17:26:59 Functions: 0 2 0.0 %

          Line data    Source code
       1             : //-*- Mode: C++ -*-
       2             : // @(#) $Id$
       3             : //  *************************************************************************
       4             : //  This file is property of and copyright by the ALICE HLT Project         *
       5             : //  ALICE Experiment at CERN, All rights reserved.                          *
       6             : //  See cxx source for full Copyright notice                                *
       7             : //                                                                          *
       8             : //  AliHLTTPCCADisplay class is a debug utility.                            *
       9             : //  It is not used in the normal data processing.                           *
      10             : //                                                                          *
      11             : //***************************************************************************
      12             : 
      13             : #ifndef ALIHLTTPCCADISPLAY_H
      14             : #define ALIHLTTPCCADISPLAY_H
      15             : 
      16             : 
      17             : class AliHLTTPCCATracker;
      18             : class AliHLTTPCCATrack;
      19             : class AliHLTTPCCATrackParam;
      20             : class AliHLTTPCCAPerformance;
      21             : 
      22             : class TCanvas;
      23             : #include "TArc.h"
      24             : #include "TLine.h"
      25             : #include "TPolyLine.h"
      26             : #include "TBox.h"
      27             : #include "TCrown.h"
      28             : #include "TMarker.h"
      29             : #include "TLatex.h"
      30             : 
      31             : 
      32             : 
      33             : /**
      34             :  * @class AliHLTTPCCADisplay
      35             :  */
      36             : class AliHLTTPCCADisplay
      37             : {
      38             : 
      39             :   public:
      40             : 
      41             :     class AliHLTTPCCADisplayTmpHit;
      42             : 
      43             :     static AliHLTTPCCADisplay &Instance();
      44             : 
      45             :     AliHLTTPCCADisplay();
      46             : 
      47             :     virtual ~AliHLTTPCCADisplay();
      48             : 
      49             :     void Init();
      50             :     void Update();
      51             :     void ClearView();
      52             :     void Ask();
      53             :     void SetSliceView();
      54             :     void SetTPCView();
      55             :     void SetCurrentSlice( AliHLTTPCCATracker *slice );
      56             :     void Set2Slices( AliHLTTPCCATracker * const slice );
      57             : 
      58             :     int GetColor( int i ) const;
      59             :     int GetColorZ( double z ) const ;
      60             :     int GetColorY( double y ) const ;
      61             :     int GetColorK( double k ) const ;
      62             :     void Global2View( double x, double y, double *xv, double *yv ) const ;
      63             :     void Slice2View( double x, double y, double *xv, double *yv ) const ;
      64             :     int GetTrackMC( const AliHLTTPCCADisplayTmpHit *vHits, int NHits );
      65             : 
      66             :     void DrawTPC();
      67             :     void DrawSlice( AliHLTTPCCATracker *slice, bool DrawRows = 0 );
      68             :     void DrawSliceOutTrack( int itr, int color = -1, int width = -1  );
      69             :     void DrawSliceOutTrack( AliHLTTPCCATrackParam &t, double Alpha, int itr, int color = -1, int width = -1  );
      70             :     void DrawSliceTrack( int itr, int color = -1 );
      71             :     bool DrawTrack( AliHLTTPCCATrackParam t, double Alpha, const AliHLTTPCCADisplayTmpHit *vHits,
      72             :                     int NHits, int color = -1, int width = -1, bool pPoint = 0 );
      73             : 
      74             :     bool DrawTracklet( AliHLTTPCCATrackParam &track, const int *hitstore, int color = -1, int width = -1, bool pPoint = 0 );
      75             : 
      76             :     void DrawSliceHit( int iRow, int iHit, int color = -1, Size_t width = -1 );
      77             :     void DrawSliceHits( int color = -1, Size_t width = -1 );
      78             :     void DrawSliceLinks( int colorUp = -1, int colorDn = -1, int width = -1 );
      79             :     void DrawSliceLink( int iRow, int iHit, int colorUp = -1, int colorDn = -1, int width = -1 );
      80             :     void SliceHitXYZ(int iRow, int iHit, double &x, double &y, double &z );
      81             : 
      82             : 
      83             :     void SetSliceTransform( double alpha );
      84             : 
      85             :     void SetSliceTransform( AliHLTTPCCATracker *slice );
      86             : 
      87           0 :     TCanvas *CanvasYX() const { return fYX; }
      88           0 :     TCanvas *CanvasZX() const { return fZX; }
      89             : 
      90             :   protected:
      91             : 
      92             :     TCanvas *fYX, *fZX;               // two views
      93             :     bool fAsk;                      // flag to ask for the pressing key
      94             :     bool fSliceView;               // switch between slice/TPC zoom
      95             :     AliHLTTPCCATracker *fSlice;      // current CA tracker, includes slice geometry
      96             :     AliHLTTPCCAPerformance *fPerf; // Performance class (mc labels etc)
      97             :     double fCos, fSin, fZMin, fZMax, fYMin, fYMax;// view parameters
      98             :     double fSliceCos, fSliceSin;        // current slice angle
      99             :     double fRInnerMin, fRInnerMax, fROuterMin, fROuterMax, fTPCZMin, fTPCZMax; // view parameters
     100             : 
     101             :     TArc fArc;       // parameters of drawing objects are copied from this members
     102             :     TLine fLine;     //!
     103             :     TPolyLine fPLine;//!
     104             :     TMarker fMarker; //!
     105             :     TBox fBox;       //!
     106             :     TCrown fCrown;   //!
     107             :     TLatex fLatex;   //!
     108             : 
     109             :     bool fDrawOnlyRef; // draw only clusters from ref. mc tracks
     110             : 
     111             : private:
     112             :   /// copy constructor prohibited
     113             :   AliHLTTPCCADisplay( const AliHLTTPCCADisplay& );
     114             :   /// assignment operator prohibited
     115             :   AliHLTTPCCADisplay& operator=( const AliHLTTPCCADisplay& );
     116             : 
     117             : };
     118             : 
     119             : #endif //ALIHLTTPCCADISPLAY_H

Generated by: LCOV version 1.11