Belle II Software
development
RFEventProcessor.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 RFEVENTPROCESSOR_H
9
#define RFEVENTPROCESSOR_H
10
11
#include <string>
12
13
#include "daq/rfarm/manager/RFConf.h"
14
#include "daq/rfarm/manager/RFSharedMem.h"
15
#include "daq/rfarm/manager/RFProcessManager.h"
16
#include "daq/rfarm/manager/RFLogManager.h"
17
#include "daq/rfarm/manager/RFFlowStat.h"
18
19
#include "framework/pcore/RingBuffer.h"
20
21
#include "daq/rfarm/manager/RFServerBase.h"
22
23
#define MAXNODES 256
24
25
namespace
Belle2
{
31
class
RFEventProcessor
:
public
RFServerBase
{
32
public
:
33
RFEventProcessor
(std::string conffile);
34
~RFEventProcessor
();
35
36
// Functions to be hooked to NSM
37
int
Configure(
NSMmsg
*,
NSMcontext
*)
override
;
38
int
UnConfigure(
NSMmsg
*,
NSMcontext
*)
override
;
39
int
Start(
NSMmsg
*,
NSMcontext
*)
override
;
40
int
Stop(
NSMmsg
*,
NSMcontext
*)
override
;
41
int
Restart(
NSMmsg
*,
NSMcontext
*)
override
;
42
43
// Server function
44
void
server();
45
46
// Cleanup
47
void
cleanup();
48
49
private
:
50
RFConf
* m_conf;
51
RFSharedMem
* m_shm;
52
RFProcessManager
* m_proc;
53
RFLogManager
* m_log;
54
RingBuffer
* m_rbufin;
55
RingBuffer
* m_rbufout;
56
RFFlowStat
* m_flow;
57
58
int
m_pid_receiver;
59
int
m_pid_basf2;
60
int
m_pid_sender;
61
int
m_pid_hrecv;
62
int
m_pid_hrelay;
63
char
m_nodename[256 + 4];
64
65
int
m_expno;
66
int
m_runno;
67
68
};
69
71
}
72
#endif
73
74
75
76
Belle2::RFConf
Definition:
RFConf.h:24
Belle2::RFEventProcessor
Definition:
RFEventProcessor.h:31
Belle2::RFFlowStat
Definition:
RFFlowStat.h:27
Belle2::RFLogManager
Definition:
RFLogManager.h:18
Belle2::RFProcessManager
Definition:
RFProcessManager.h:22
Belle2::RFServerBase
Definition:
RFServerBase.h:19
Belle2::RFSharedMem
Definition:
RFSharedMem.h:51
Belle2::RingBuffer
Class to manage a Ring Buffer placed in an IPC shared memory.
Definition:
RingBuffer.h:39
Belle2
Abstract base class for different kinds of events.
Definition:
MillepedeAlgorithm.h:17
NSMcontext_struct
Definition:
nsmlib2.h:71
NSMmsg
Definition:
nsm2.h:224
daq
rfarm
manager
include
RFEventProcessor.h
Generated on Fri Nov 8 2024 02:35:28 for Belle II Software by
1.9.6