Belle II Software  release-05-02-19
FlowMonitor.h
1 #ifndef _Belle2_FlowMonitor_h
2 #define _Belle2_FlowMonitor_h
3 
4 #include <daq/slc/readout/RunInfoBuffer.h>
5 #include <daq/slc/readout/IOInfo.h>
6 #include <daq/slc/readout/ronode_status.h>
7 
8 namespace Belle2 {
14  class FlowMonitor {
15 
16  public:
17  FlowMonitor()
18  {
19  m_ioinfo.push_back(IOInfo());
20  m_ioinfo.push_back(IOInfo());
21  m_info = NULL;
22  m_status.connection_in = 0;
23  m_status.connection_out = 0;
24  }
25  ~FlowMonitor() {}
26 
27  public:
28  bool open(RunInfoBuffer* m_info);
29  bool close();
30  ronode_status& monitor();
31  const ronode_status& getStatus() const { return m_status; }
32  ronode_status& getStatus() { return m_status; }
33  bool isAvailable() const { return m_info != NULL; }
34 
35  private:
36  std::string m_nodename;
37  RunInfoBuffer* m_info;
38  std::vector<IOInfo> m_ioinfo;
39  std::string m_ip[2];
40  unsigned long long m_nbyte[2];
41  ronode_status m_status;
42 
43  };
44 
46 }
47 
48 #endif
Belle2::ronode_status
Definition: ronode_status.h:16
Belle2::RunInfoBuffer
Definition: RunInfoBuffer.h:15
Belle2::IOInfo
Definition: IOInfo.h:12
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::FlowMonitor
Definition: FlowMonitor.h:14