LCOV - code coverage report
Current view: top level - MUON/MUONgraphics - AliMUONPainterMatrixFrame.h (source / functions) Hit Total Coverage
Test: coverage.info Lines: 1 2 50.0 %
Date: 2016-06-14 17:26:59 Functions: 1 9 11.1 %

          Line data    Source code
       1             : #ifndef ALIMUONPAINTERMATRIXFRAME_H
       2             : #define ALIMUONPAINTERMATRIXFRAME_H
       3             : 
       4             : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
       5             : * See cxx source for full Copyright notice                               */
       6             : 
       7             : // $Id$
       8             : 
       9             : /// \ingroup graphics
      10             : /// \class AliMUONPainterMatrixFrame
      11             : /// \brief Widget to plot a matrix of painters
      12             : /// 
      13             : // Author Laurent Aphecetche, Subatech
      14             : 
      15             : #ifndef ROOT_TGFrame
      16             : #  include "TGFrame.h"
      17             : #endif
      18             : #include <float.h>
      19             : 
      20             : class AliMUONPainterColorSlider;
      21             : class AliMUONPainterPlotSelector;
      22             : class AliMUONPainterMatrix;
      23             : class AliMUONPainterHighlighter;
      24             : class AliMUONVPainter;
      25             : class AliMUONVTrackerData;
      26             : class TGButtonGroup;
      27             : class TGToolTip;
      28             : class TList;
      29             : class TObjArray;
      30             : class TRootEmbeddedCanvas;
      31             : 
      32             : class AliMUONPainterMatrixFrame : public TGCompositeFrame
      33             : {
      34             : public:
      35             :   AliMUONPainterMatrixFrame(const TGWindow* window, UInt_t w, UInt_t h);
      36             :   virtual ~AliMUONPainterMatrixFrame();
      37             :   
      38             :   void Clear(Option_t* opt="");
      39             : 
      40             :   void DataRangeAutoRequested();
      41             :   
      42             :   void DataRangeWasChanged(Double_t* range);
      43             :     
      44             :   void DataSourceWasChanged(const char* name, AliMUONVTrackerData* data, Int_t dataIndex);
      45             : 
      46             :   void EventInfo(Int_t event, Int_t px, Int_t py, TObject* selected);
      47             : 
      48             :   void MouseEnter(AliMUONVPainter* painter); // *SIGNAL*
      49             : 
      50             :   void MouseMotion(AliMUONVPainter* painter, Double_t* position); // *SIGNAL*
      51             : 
      52             :   void MouseLeave(const AliMUONVPainter* painter); // *SIGNAL*
      53             :   
      54             :   void ResponderButtonWasClicked(Int_t id); 
      55             : 
      56             :   void OutlineButtonWasClicked(Int_t id); 
      57             :   
      58             :   void ColorSliderDefaultButtonWasClicked();
      59             :   
      60             :   void ColorSliderSetDefaultButtonWasClicked(Double_t* range);
      61             :   
      62             :   void Use(AliMUONPainterMatrix* group);
      63             :   
      64             :   void TitleHasChanged(const char* newTitle); // *SIGNAL*
      65             :   
      66             :   void Update(); 
      67             : 
      68             :   /// Get the matrix pointer
      69           0 :   AliMUONPainterMatrix* Matrix() const { return fPainterMatrix; }
      70             :   
      71             :   void SaveAs(const char* filename="", Option_t* option="") const;
      72             : 
      73             :   void UpdateInterface(Bool_t fromScratch);
      74             :   
      75             : private:
      76             :   /// not implemented
      77             :   AliMUONPainterMatrixFrame(const AliMUONPainterMatrixFrame& rhs);
      78             :   /// not implemented
      79             :   AliMUONPainterMatrixFrame& operator=(const AliMUONPainterMatrixFrame& rhs);
      80             : 
      81             :   void ChangeTitle(const TString& title);
      82             :   
      83             :   void ChangeTitle(AliMUONVPainter* painter, const char* basename=0x0,
      84             :                    Double_t x=FLT_MAX, Double_t y=FLT_MAX);
      85             :   
      86             :   void CreateButtons();
      87             :   
      88             :   void UpdateDataRange();
      89             :   
      90             :   void ViewModified();
      91             :   
      92             : private:
      93             :   AliMUONPainterMatrix* fPainterMatrix; ///< the matrix we plot (not owner)
      94             :   TRootEmbeddedCanvas* fView; ///< the canvas used to plot
      95             :   TGHorizontalFrame* fInterface;  ///< the interface frame
      96             :   TGButtonGroup* fResponderButtons; ///< the responder buttons
      97             :   TGButtonGroup* fOutlineButtons; ///< the outline buttons
      98             :   
      99             :   AliMUONPainterPlotSelector* fPlotSelector; ///< the data source selection
     100             :     
     101             :   AliMUONPainterHighlighter* fPainterHighlighter; ///< the highlighter
     102             :   
     103             :   UInt_t fCanvasWidth; ///< canvas width
     104             :   UInt_t fCanvasHeight; ///< canvas height
     105             :   
     106             :   TGCompositeFrame* fMainFrame; ///< our main frame
     107             :   
     108             :   AliMUONPainterColorSlider* fColorSlider; ///< color slider (for data)
     109             :   
     110          12 :   ClassDef(AliMUONPainterMatrixFrame,1) // Widget for drawing painter matrix
     111             : };
     112             : 
     113             : #endif

Generated by: LCOV version 1.11