Belle II Software  release-05-01-25
ERecoEventProcessor.h
1 #ifndef EREVENTPROCESSOR_H
2 #define EREVENTPROCESSOR_H
3 //+
4 // File : ERecoEventProcessor.h
5 // Description : receive event, process it by basf2, and send output
6 //
7 // Author : Ryosuke Itoh, IPNS, KEK
8 // Date : 24 - June - 2013
9 //-
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 {
32  public:
33  ERecoEventProcessor(std::string conffile);
35 
36  // Functions to be hooked to NSM
37  int Configure(NSMmsg*, NSMcontext*);
38  int UnConfigure(NSMmsg*, NSMcontext*);
39  int Start(NSMmsg*, NSMcontext*);
40  int Stop(NSMmsg*, NSMcontext*);
41  int Restart(NSMmsg*, NSMcontext*);
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  int m_nnodes;
62  char m_nodename[256];
63 
64  };
65 
67 }
68 #endif
69 
70 
71 
72 
Belle2::ERecoEventProcessor
Definition: ERecoEventProcessor.h:31
NSMmsg
Definition: nsm2.h:217
Belle2::RFFlowStat
Definition: RFFlowStat.h:28
Belle2::RFSharedMem
Definition: RFSharedMem.h:51
Belle2::RFLogManager
Definition: RFLogManager.h:18
Belle2::RingBuffer
Class to manage a Ring Buffer placed in an IPC shared memory.
Definition: RingBuffer.h:36
Belle2::RFProcessManager
Definition: RFProcessManager.h:22
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::RFServerBase
Definition: RFServerBase.h:20
Belle2::RFConf
Definition: RFConf.h:24
NSMcontext_struct
Definition: nsmlib2.h:66