3 // $Id: AliHLTEMCALOnlineDisplayEventTab.h 35071 2009-09-29 05:26:09Z phille $
5 /**************************************************************************
6 * Copyright(c) 2006, ALICE Experiment at CERN, All rights reserved. *
8 * Authors: Per Thomas Hille for the ALICE *
9 * offline/HLT Project. Contributors are mentioned in the code where *
12 * Permission to use, copy, modify and distribute this software and its *
13 * documentation strictly for non-commercial purposes is hereby granted *
14 * without fee, provided that the above copyright notice appears in all *
15 * copies and that both the copyright notice and this permission notice *
16 * appear in the supporting documentation. The authors make no claims *
17 * about the suitability of this software for any purpose. It is *
18 * provided "as is" without express or implied warranty. *
19 **************************************************************************/
21 #ifndef ALIHLTEMCALONLINEDISPLAYEVENTTAB_H
22 #define ALIHLTEMCALONLINEDISPLAYEVENTTAB_H
25 #include "AliHLTEMCALOnlineDisplayTab.h"
26 #include "AliHLTCaloConstants.h"
27 #include "AliHLTEMCALMapper.h"
34 //using namespace EmcalHLTConst;
38 class TRootEmbeddedCanvas;
42 class AliHLTEMCALOnlineDisplayTH2D;
43 class AliHLTEMCALGetEventButton;
44 class AliHLTHOMERReader;
45 class AliHLTCaloRcuCellEnergyDataStruct;
46 class AliHLTEMCALOnlineDisplay;
47 class AliHLTEMCALSharedMemoryInterface;
48 class AliHLTCaloChannelRawDataStruct;
51 class AliHLTEMCALOnlineDisplayEventTab : public AliHLTEMCALOnlineDisplayTab
55 virtual ~AliHLTEMCALOnlineDisplayEventTab();
58 AliHLTEMCALOnlineDisplayEventTab(AliHLTEMCALOnlineDisplay * onlineDisplayPtr, TGTab *tabPtr,
59 AliHLTHOMERReader * homerSyncPtr,
60 AliHLTHOMERReader * homerPtrs[MAXHOSTS],
61 int nHosts, int runnumber = -1);
63 Int_t GetRawData(TH1D *histPtr, int x, int z, int gain);
67 virtual void ReadBlockData(AliHLTHOMERReader *homeReaderPtr);
68 void FindFourierBlocks(AliHLTHOMERReader *homeReaderPtr) const;
71 TGTab *fTab; // Tab for onlinedisplay
73 TRootEmbeddedCanvas *fEc1, *fEc2, *fEc3, *fEc4, *fEc5, *fEc6;// Embedded canvas for tower energies etc..
74 TGCompositeFrame *fSubF1, *fSubF2, *fSubF3; // comment
75 TCanvas *fgCanvasPtr[NGAINS]; // Comment
76 AliHLTEMCALOnlineDisplayTH2D *fgLegoPlotPtr[NGAINS]; // Legoplot with tower energies
78 int *fChannelData[NMODULES][NZROWSMOD][NXCOLUMNSMOD][NGAINS]; // Arrays to hold tower energies
79 Int_t fNChannelSamples[NMODULES][NZROWSMOD][NXCOLUMNSMOD][NGAINS]; // Arrays to holdrwa data
80 Int_t fChannelEnergy[NMODULES][NZROWSMOD][NXCOLUMNSMOD][NGAINS]; // Arrays to hold tower energies
83 AliHLTEMCALOnlineDisplayEventTab (const AliHLTEMCALOnlineDisplayEventTab & );
84 AliHLTEMCALOnlineDisplayEventTab & operator = (const AliHLTEMCALOnlineDisplayEventTab &);
85 AliHLTEMCALOnlineDisplayEventTab();
86 void FillRawData(const AliHLTCaloChannelRawDataStruct &rawStr);
87 AliHLTEMCALGetEventButton* fgEventButtPtr;
88 void InitDisplay(TGTab *tabPtr){};
89 void InitDisplay(TGTab * tabPtr, int runnumber);
90 AliHLTEMCALOnlineDisplay *fOnlineDisplayPtr;
91 AliHLTEMCALSharedMemoryInterface *fShmPtr;