1 /* This file is property of and copyright by the ALICE HLT Project *
2 * ALICE Experiment at CERN, All rights reserved. *
3 * See cxx source for full Copyright notice */
5 /// @file AliHLTEveBase.h
6 /// @author Svein Lindal
7 /// @brief Base class for the HLT eve display elements
9 #ifndef ALIHLTEVEBASE_H
10 #define ALIHLTEVEBASE_H
15 class AliHLTHOMERBlockDesc;
16 class AliEveHOMERManager;
24 /** Default constructor prohibited **/
28 virtual ~AliHLTEveBase();
30 /** Process the incoming blocks, must be implemented by children */
31 virtual void ProcessBlock(AliHLTHOMERBlockDesc * block) = 0;
33 /** Update the elements after new event loaded, to be implemented by children */
34 virtual void UpdateElements() = 0;
36 /** Reset the elements before reading in new event, to be implemented by children */
37 virtual void ResetElements() = 0;
39 /** Set the parent AliEveHOMERManager instance */
40 void SetEventManager(AliEveHOMERManager * em) { fEventManager = em; };
46 /** Create a new canvas tab */
47 TCanvas * CreateCanvas(TString tabTitle, TString canvasTitle );
49 /** Addhistograms to the canvas */
50 virtual void AddHistogramsToCanvas(AliHLTHOMERBlockDesc * block, TCanvas * canvas, Int_t &cdCount );
53 /// Getters and setters for the max number of histograms
54 void SetMaxHistograms(Int_t mh) {fMaxHistos = mh;}
55 Int_t GetMaxHistograms() const {return fMaxHistos;}
57 ///Getter and setter for the detector string
58 void SetDetector(TString det) {fDetector = det;}
59 TString GetDetector() const {return fDetector;}
62 AliEveHOMERManager * fEventManager; //Pointer to AliEveHOMERManager instance
63 TCanvas * fCanvas; //Canvas for histograms
64 Int_t fHistoCount; //Counter for histograms, to track where to draw the next one
69 /** copy constructor prohibited */
70 AliHLTEveBase(const AliHLTEveBase&);
71 /** assignment operator prohibited */
72 AliHLTEveBase& operator=(const AliHLTEveBase&);
74 Int_t fMaxHistos; // Maximum number histograms there is room for.
76 TString fDetector; //String denoting the detector
78 ClassDef(AliHLTEveBase, 0);