/* * File: GenericFileSink.tpl * Author: winckler * * Created on October 7, 2014, 7:21 PM */ template GenericFileSink::GenericFileSink() : InputPolicy() , OutputPolicy() { } template GenericFileSink::~GenericFileSink() { } template void GenericFileSink::SetTransport(FairMQTransportFactory* transport) { FairMQDevice::SetTransport(transport); // InputPolicy::SetTransport(transport); } template void GenericFileSink::InitTask() { InitOutputFile(); // InputPolicy::Init(); // OutputPolicy::Init(); } template void GenericFileSink::InitOutputFile() { OutputPolicy::InitOutFile(); } template void GenericFileSink::Run() { int receivedMsg = 0; while (GetCurrentState() == RUNNING) { FairMQMessage* msg = fTransportFactory->CreateMessage(); if (fChannels["data-in"].at(0).Receive(msg) > 0) { OutputPolicy::AddToFile(InputPolicy::DeSerializeMsg(msg)); receivedMsg++; } delete msg; } MQLOG(INFO) << "Received " << receivedMsg << " messages!"; }