15 #include <boost/thread.hpp>
16 #include <boost/bind.hpp>
17 #include <boost/archive/binary_iarchive.hpp>
20 #include "baseMQtools.h"
22 #include "FairMQLogger.h"
23 #include "mrfdata_8b.h"
37 using namespace baseMQ::tools::resolve;
39 if (has_BoostSerialization<
PndSdsDigiTopix4,
void(boost::archive::binary_iarchive&,
const unsigned int)>::value == 1)
52 FairMQChannel& dataInChannel = fChannels.at(
"data-in").at(0);
55 while (CheckCurrentState(RUNNING))
57 FairMQMessage* msg = fTransportFactory->CreateMessage();
59 if (dataInChannel.Receive(msg) > 0)
61 LOG(INFO) <<
"Received Message: ";
62 LOG(INFO) << receivedMsgs++;
63 LOG(INFO) << msg->GetSize();
65 string msgStr(static_cast<char*>(msg->GetData()), msg->GetSize());
66 istringstream ibuffer(msgStr);
68 boost::archive::binary_iarchive InputArchive(ibuffer);
73 catch (boost::archive::archive_exception& e)
75 LOG(ERROR) << e.what();
78 LOG(INFO) <<
"TopixData: " <<
fTopixData.size();
Data class to store the digi output of a pixel module.
bool fHasBoostSerialization
virtual ~PndMQTopix4Sink()
std::vector< PndSdsDigiTopix4 > fTopixData