10 #include <daq/rawdata/modules/DeSerializerPXD.h>
28 setDescription(
"Receives PXD-Data from ONSEN (or a simulator) and stores it as RawPXD in Data Store");
31 addParam(
"Ports", m_ports,
"default port number");
32 addParam(
"Hosts", m_hosts,
"default host names");
34 m_compressionLevel = 0;
35 m_buffer =
new int[MAXEVTSIZE];
38 B2DEBUG(0,
"DeSerializerPXDModule: Constructor done.");
42 DeSerializerPXDModule::~DeSerializerPXDModule()
47 void DeSerializerPXDModule::initialize()
49 if (m_hosts.size() != m_ports.size()) {
50 B2ERROR(
"DeSerializerPXDModule: Parameter error. Hosts and Ports need the same number of entries!");
51 DeSerializerPXDModule::terminate();
56 for (
int i = 0; i < (int)(m_hosts.size()); i++) {
61 m_eventMetaDataPtr.registerInDataStore();
64 rawpxdary.registerInDataStore();
66 B2DEBUG(0,
"DeSerializerPXDModule: initialized.");
69 void DeSerializerPXDModule::beginRun()
71 B2DEBUG(0,
"beginRun called.");
74 void DeSerializerPXDModule::event()
79 for (
auto& it : m_recvs) {
81 stat = it->recv_pxd_buffer((
char*)m_buffer);
83 B2INFO(
"DeserializerPXD Socket failed: stat = " << stat);
84 DeSerializerPXDModule::endRun();
85 DeSerializerPXDModule::terminate();
91 rawpxdary.appendNew(m_buffer, stat);
98 m_eventMetaDataPtr.create();
99 m_eventMetaDataPtr->setExperiment(1);
100 m_eventMetaDataPtr->setRun(1);
101 m_eventMetaDataPtr->setEvent(m_nEvents);
108 void DeSerializerPXDModule::endRun()
112 B2DEBUG(0,
"endRun done.");
116 void DeSerializerPXDModule::terminate()
118 B2INFO(
"terminate called");