Belle II Software
development
ERecoEventProcessor.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 EREVENTPROCESSOR_H
9
#define EREVENTPROCESSOR_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
ERecoEventProcessor
:
public
RFServerBase
{
32
public
:
33
ERecoEventProcessor
(std::string conffile);
34
~ERecoEventProcessor
();
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
private
:
47
RFConf
* m_conf;
48
RFSharedMem
* m_shm;
49
RFProcessManager
* m_proc;
50
RFLogManager
* m_log;
51
RingBuffer
* m_rbufin;
52
RingBuffer
* m_rbufout;
53
RFFlowStat
* m_flow;
54
55
int
m_pid_receiver;
56
int
m_pid_basf2;
57
int
m_pid_sender;
58
int
m_pid_hrecv;
59
int
m_pid_hrelay;
60
int
m_pid_evs;
61
char
m_nodename[256 + 4];
62
63
};
64
66
}
67
#endif
68
69
70
71
Belle2::ERecoEventProcessor
Definition:
ERecoEventProcessor.h:31
Belle2::RFConf
Definition:
RFConf.h:24
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
expreco
include
ERecoEventProcessor.h
Generated on Fri Nov 8 2024 02:35:04 for Belle II Software by
1.9.6