File indexing completed on 2025-08-03 08:20:56
0001 #ifndef ONLMONSERVER_ONLMON_H
0002 #define ONLMONSERVER_ONLMON_H
0003
0004 #include "OnlMonBase.h"
0005
0006 #include <iostream>
0007 #include <set>
0008 #include <string>
0009
0010 class Event;
0011 class OnlMonServer;
0012 class TH1;
0013
0014 class OnlMon : public OnlMonBase
0015 {
0016 public:
0017 OnlMon(const std::string &name = "NONE");
0018 ~OnlMon() override {}
0019
0020 enum
0021 {
0022 ACTIVE = -1,
0023 OK = 0,
0024 WARNING = 1,
0025 ERROR = 2
0026 };
0027 virtual int process_event_common(Event *evt);
0028 virtual int process_event(Event *evt);
0029 virtual int InitCommon(OnlMonServer *se);
0030 virtual int Init() { return 0; }
0031 virtual int Reset();
0032 virtual void identify(std::ostream &out = std::cout) const;
0033 virtual int BeginRunCommon(const int runno, OnlMonServer *se);
0034 virtual int BeginRun(const int ) { return 0; }
0035 virtual int EndRun(const int ) { return 0; }
0036 virtual void SetStatus(const int newstatus);
0037 virtual int ResetEvent() { return 0; }
0038 virtual void SetMonitorServerId(unsigned int i);
0039 virtual unsigned int MonitorServerId() const {return m_MonitorServerId;}
0040
0041 protected:
0042 int status;
0043 unsigned int m_MonitorServerId = 0;
0044 TH1 *m_LocalFrameWorkVars = nullptr;
0045 };
0046
0047 #endif