+// $Id$
+
/**************************************************************************
* This file is property of and copyright by the Experimental Nuclear *
* Physics Group, Dep. of Physics *
#endif
+
#include "AliHLTPHOSOnlineDisplay.h"
#include "AliHLTDataTypes.h"
#include "AliHLTPHOSRcuCellEnergyDataStruct.h"
#include "AliHLTPHOSOnlineDisplayEventTab.h"
#include "AliHLTPHOSOnlineDisplayCalibTab.h"
+//#include "AliHLTPHOSFourier.h"
+
+
AliHLTPHOSOnlineDisplayEventTab* AliHLTPHOSOnlineDisplay::fgEventTabPtr = 0;
+AliHLTPHOSOnlineDisplayFourierTab* AliHLTPHOSOnlineDisplay::fgFourierTabPtr = 0;
AliHLTPHOSOnlineDisplayCalibTab* AliHLTPHOSOnlineDisplay::fgCalibTabPtr = 0;
AliHLTPHOSOnlineDisplay* AliHLTPHOSOnlineDisplay::fgInstancePtr = 0; /**<The one an only instance of PhosOnlineDisplay*/
HOMERReader* AliHLTPHOSOnlineDisplay::fgHomerReaderPtr = 0; /**<Homer reader that fetches events from the HLT online stream*/
-HOMERReader* AliHLTPHOSOnlineDisplay::fgHomerReadersPtr[MAX_HOSTS]; /**<Homer reader that fetches events from the HLT online stream*/
+HOMERReader* AliHLTPHOSOnlineDisplay::fgHomerReadersPtr[MAXHOSTS]; /**<Homer reader that fetches events from the HLT online stream*/
Bool_t AliHLTPHOSOnlineDisplay::fgAccumulate = kFALSE ; /**<If set to kFALSE reset fgLegoplot between event, kTRUE adds current energies to previous plot*/
Bool_t AliHLTPHOSOnlineDisplay::fgSyncronize = kFALSE ;
unsigned int AliHLTPHOSOnlineDisplay::fgNHosts = 0;
unsigned int AliHLTPHOSOnlineDisplay::fgNPorts = 0;
-char* AliHLTPHOSOnlineDisplay::fgHosts[MAX_HOSTS];
+char* AliHLTPHOSOnlineDisplay::fgHosts[MAXHOSTS];
short unsigned int* AliHLTPHOSOnlineDisplay::fgPorts = 0;
-TGTab* AliHLTPHOSOnlineDisplay::fTab = 0;
+TGTab* AliHLTPHOSOnlineDisplay::fgTab = 0;
using namespace std;
+//gStyle->SetOptStat(false);
+
AliHLTPHOSOnlineDisplay*
AliHLTPHOSOnlineDisplay::Instance(int argc, char** argv)
{
+ // See header file for documentation
if (!fgInstancePtr) fgInstancePtr = new AliHLTPHOSOnlineDisplay(argc, argv);
return fgInstancePtr;
}
-AliHLTPHOSOnlineDisplay::AliHLTPHOSOnlineDisplay() : AliHLTPHOSBase()
+AliHLTPHOSOnlineDisplay::AliHLTPHOSOnlineDisplay() : AliHLTPHOSBase(), fRunNumber(-1)
{
+ // See header file for documentation
cout << "ERROR ! level: FATAL, you cannot invoke the onlinedisplay without arguments" << endl;
}
AliHLTPHOSOnlineDisplay::AliHLTPHOSOnlineDisplay(int argc, char** argv) : AliHLTPHOSBase()
{
+ // See header file for documentation
+ gStyle->SetOptStat(false);
+
ScanArguments(argc, argv);
char **tmp;
cout << "creating new PHOS Onlinedisplay" << endl;
AliHLTPHOSOnlineDisplay::~AliHLTPHOSOnlineDisplay()
{
-
+ // See header file for documentation
}
+
void
AliHLTPHOSOnlineDisplay::InitDisplay()
{
+ // See header file for documentation
char tmpHistoName[256];
char tmpChDtaName[256];
gStyle->SetPalette(1);
- fTab = new TGTab(this, 100, 100);
+ fgTab = new TGTab(this, 100, 100);
TGLayoutHints *fL1 = new TGLayoutHints(kLHintsBottom | kLHintsExpandX |
kLHintsExpandY, 2, 2, 15, 1);
- fgEventTabPtr = new AliHLTPHOSOnlineDisplayEventTab(this, fTab, fgHomerReaderPtr, fgHomerReadersPtr, fgNHosts);
- fgCalibTabPtr = new AliHLTPHOSOnlineDisplayCalibTab(fTab, fgHomerReaderPtr, fgHomerReadersPtr, fgNHosts);
+ fgEventTabPtr = new AliHLTPHOSOnlineDisplayEventTab(this, fgTab, fgHomerReaderPtr, fgHomerReadersPtr, fgNHosts, fRunNumber);
+ fgFourierTabPtr = new AliHLTPHOSOnlineDisplayFourierTab(this, fgTab, fgHomerReaderPtr, fgHomerReadersPtr, fgNHosts);
+ fgCalibTabPtr = new AliHLTPHOSOnlineDisplayCalibTab(fgTab, fgHomerReaderPtr, fgHomerReadersPtr, fgNHosts);
+
+ // fgEventTabPtr->SetRunNumber(fRunNumber);
+ // fgFourierTabPtr->SetRunNumber(fRunNumber);
+ // fgCalibTabPtr->SetRunNumber(fRunNumber);
- AddFrame(fTab, fL1);
+ AddFrame(fgTab, fL1);
MapSubwindows();
Resize();
SetWindowName("PHOS HLT OnlineDisplay");
// MoveResize(100,100, 800,1000);
MoveResize(100,100, 500,700);
-
}
int
AliHLTPHOSOnlineDisplay::GetNextEvent()
{
+ // See header file for documentation
+ cout << "AliHLTPHOSOnlineDisplay::GetNextEvent()" << endl;
fgEventTabPtr->GetNextEvent();
+ fgFourierTabPtr->GetNextEvent();
}
-
int
AliHLTPHOSOnlineDisplay::GetHistogram()
{
+ // See header file for documentation
fgCalibTabPtr->GetNextEvent();
}
+
int
AliHLTPHOSOnlineDisplay::ScanArguments(int argc, char** argv)
{
- for(int i=0; i< MAX_HOSTS; i++)
+ // See header file for documentation
+ for(int i=0; i< MAXHOSTS; i++)
{
fgHosts[i] = new char[256];
}
fgAccumulate = kTRUE;
}
+ if (argument.CompareTo("-run")==0)
+ {
+ if(i+1 <= argc)
+ {
+ i++;
+ fRunNumber = atoi(argv[i]);
+ cout << __FILE__ <<":" <<__LINE__ << ", !!!!!!!!!!!!! setting runnumber too " << fRunNumber <<endl;;
+ // fIsSetRunNumber = true;
+ }
+
+ }
+
+
if (argument.CompareTo("-host")==0)
{
if(i+1 <= argc)
}
else
{
- fgPorts[fgNPorts] = DEFAULT_EVENT_PORT;
+ fgPorts[fgNPorts] = DEFAULTEVENTPORT;
cout << "B setting port to " << fgPorts[fgNPorts] <<endl;
fgNPorts ++;
portIsSet = kTRUE;
void
AliHLTPHOSOnlineDisplay::Gain2Text(const int gain, char *txt) const
{
-
- if(gain == LOW_GAIN)
+ // See header file for documentation
+ if(gain == LOWGAIN)
{
sprintf(txt,"Low Gain");
}
- else if(gain == HIGH_GAIN)
+ else if(gain == HIGHGAIN)
{
sprintf(txt,"High Gain");
}