Belle II Software  release-05-01-25
RFSharedMem.cc
1 //+
2 // File : RFSharedMem.cc
3 // Description : Shared Memory Manager for RFARM
4 //
5 // Author : Ryosuke Itoh, IPNS, KEK
6 // Date : 26 - June - 2013
7 //-
8 
9 #include "daq/rfarm/manager/RFSharedMem.h"
10 
11 #include <strings.h>
12 
13 using namespace std;
14 using namespace Belle2;
15 
16 RFSharedMem::RFSharedMem(const char* name) : SharedMem(name, sizeof(RfShm_Data))
17 {
18  RfShm_Data* rfshm = (RfShm_Data*) ptr();
19  if (SharedMem::IsCreated()) {
20  bzero((char*)rfshm, sizeof(RfShm_Data));
21  for (int i = 0; i < RFSHM_MAX_PROCESS; i++) {
22  (rfshm->cell[i]).pid = 0;
23  (rfshm->cell[i]).type = 0;
24  (rfshm->cell[i]).command = -1;
25  }
26  }
27 }
28 
29 RFSharedMem::~RFSharedMem()
30 {
31 }
32 
33 RfShm_Cell& RFSharedMem::GetCell(int id)
34 {
35  RfShm_Data* rfshm = (RfShm_Data*) ptr();
36  return rfshm->cell[id];
37 }
38 
Belle2::RfShm_Cell
Definition: RFSharedMem.h:27
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::RfShm_Data
Definition: RFSharedMem.h:44
Belle2::SharedMem
Definition: SharedMem.h:20