AliRawReaderDateOnline::AliRawReaderDateOnline(
#ifdef ALI_DATE
- const char* filename
+ const char* filename
#else
- const char* /* filename */
+ const char* /* filename */
#endif
- ) :
+ , const Char_t** customTable) :
AliRawReaderDate((void*)NULL),
+ fTable(customTable),
fStop(kFALSE)
{
monitorSetNowait();
monitorSetNoWaitNetworkTimeout(1000);
- const Char_t* table[] = {"ALL", "few", "*", "*",
- "EOR", "yes","*", "*",
- NULL, NULL, NULL, NULL};
- monitorDeclareTableExtended(const_cast<char**>(table));
-
+ if (!fTable) {
+ const Char_t* table[] = {"ALL", "few", "*", "*",
+ "EOR", "yes","*", "*",
+ NULL, NULL, NULL, NULL};
+ monitorDeclareTableExtended(const_cast<char**>(table));
+ }
+ else {
+ AliInfo("Custom monitoring table:");
+ Int_t index = 0;
+ while (fTable[index] != NULL) {
+ AliInfo(Form("%s %s %s %s",fTable[index],fTable[index+1],fTable[index+2],fTable[index+3]));
+ index += 4;
+ }
+ monitorDeclareTableExtended(const_cast<char**>(fTable));
+ }
// install SIGUSR1 handler to allow clean end-of-events loop
gSystem->AddSignalHandler(new AliRawReaderDateIntHandler(this));
class AliRawReaderDateOnline: public AliRawReaderDate {
public :
- AliRawReaderDateOnline(const char* fileName);
+ AliRawReaderDateOnline(const char* fileName, const Char_t** customTable = NULL);
virtual ~AliRawReaderDateOnline();
virtual Bool_t NextEvent();
AliRawReaderDateOnline(const AliRawReaderDateOnline& rawReader);
AliRawReaderDateOnline& operator = (const AliRawReaderDateOnline& rawReader);
+ const Char_t** fTable;// custom monitoring table
Bool_t fStop; // raw-reader signaled to stop
ClassDef(AliRawReaderDateOnline, 0) // class for reading DATE raw data from shared memory