Belle II Software development
RFMaster.h
1/**************************************************************************
2 * basf2 (Belle II Analysis Software Framework) *
3 * Author: The Belle II Collaboration *
4 * *
5 * See git log for contributors and copyright holders. *
6 * This file is licensed under LGPL-3.0, see LICENSE.md. *
7 **************************************************************************/
8#ifndef RF_MASTER_H
9#define RF_MASTER_H
10
11#include "daq/rfarm/manager/RFConf.h"
12#include "daq/rfarm/manager/RFSharedMem.h"
13#include "daq/rfarm/manager/RFLogManager.h"
14
15#include "daq/rfarm/manager/RFServerBase.h"
16
17namespace Belle2 {
22 class RFMaster : public RFServerBase {
23 public:
24 RFMaster(std::string conf);
25 ~RFMaster();
26
27 // Functions to be hooked to NSM
28 int Configure(NSMmsg*, NSMcontext*) override;
29 int UnConfigure(NSMmsg*, NSMcontext*) override;
30 int Start(NSMmsg*, NSMcontext*) override;
31 int Stop(NSMmsg*, NSMcontext*) override;
32 int Restart(NSMmsg*, NSMcontext*) override;
33
34 // Function to hook message funnctions
35 void Hook_Message_Handlers();
36
37 // Message functions
38 static void Log_Handler(NSMmsg* msg, NSMcontext* ctx);
39
40 // Server function
41 void monitor_loop();
42
43
44 private:
45 RFConf* m_conf;
46 // RFSharedMem* m_shm;
47 RFLogManager* m_log;
48
49 };
50
52}
53#endif
54
55
56
Abstract base class for different kinds of events.
Definition: nsm2.h:224