mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 00:31:14 +00:00
git-svn-id: https://subversion.gsi.de/fairroot/fairbase/trunk@22451 0381ead4-6506-0410-b988-94b70fbc4730
42 lines
796 B
C++
42 lines
796 B
C++
/*
|
|
* FairMQProxy.cxx
|
|
*
|
|
* Created on: Oct 2, 2013
|
|
* Author: A. Rybalchenko
|
|
*/
|
|
|
|
#include <iostream>
|
|
|
|
#include <boost/thread.hpp>
|
|
#include <boost/bind.hpp>
|
|
|
|
#include "FairMQLogger.h"
|
|
#include "FairMQProxy.h"
|
|
|
|
FairMQProxy::FairMQProxy()
|
|
{
|
|
}
|
|
|
|
FairMQProxy::~FairMQProxy()
|
|
{
|
|
}
|
|
|
|
void FairMQProxy::Run()
|
|
{
|
|
FairMQLogger::GetInstance()->Log(FairMQLogger::INFO, ">>>>>>> Run <<<<<<<");
|
|
|
|
boost::thread rateLogger(boost::bind(&FairMQDevice::LogSocketRates, this));
|
|
|
|
//TODO: check rateLogger output
|
|
int rc = zmq_proxy(*(fPayloadInputs->at(0)->GetSocket()), *(fPayloadOutputs->at(0)->GetSocket()), NULL);
|
|
if (rc == -1) {
|
|
std::cout << "Error: proxy failed: " << strerror(errno) << std::endl;
|
|
}
|
|
|
|
//TODO: make proxy bind on both ends.
|
|
|
|
rateLogger.interrupt();
|
|
rateLogger.join();
|
|
}
|
|
|