mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-16 10:01:47 +00:00
FairMQRegion and examples/advanced/Region
This commit is contained in:
46
examples/advanced/Region/FairMQExampleRegionSampler.cxx
Normal file
46
examples/advanced/Region/FairMQExampleRegionSampler.cxx
Normal file
@@ -0,0 +1,46 @@
|
||||
/********************************************************************************
|
||||
* Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
|
||||
* *
|
||||
* This software is distributed under the terms of the *
|
||||
* GNU Lesser General Public Licence version 3 (LGPL) version 3, *
|
||||
* copied verbatim in the file "LICENSE" *
|
||||
********************************************************************************/
|
||||
/**
|
||||
* FairMQExampleRegionSampler.cpp
|
||||
*
|
||||
* @since 2014-10-10
|
||||
* @author A. Rybalchenko
|
||||
*/
|
||||
|
||||
#include "FairMQExampleRegionSampler.h"
|
||||
#include "FairMQLogger.h"
|
||||
#include "FairMQProgOptions.h" // device->fConfig
|
||||
|
||||
using namespace std;
|
||||
|
||||
FairMQExampleRegionSampler::FairMQExampleRegionSampler()
|
||||
: fMsgSize(10000)
|
||||
{
|
||||
}
|
||||
|
||||
void FairMQExampleRegionSampler::InitTask()
|
||||
{
|
||||
fMsgSize = fConfig->GetValue<int>("msg-size");
|
||||
}
|
||||
|
||||
void FairMQExampleRegionSampler::Run()
|
||||
{
|
||||
FairMQChannel& dataOutChannel = fChannels.at("data").at(0);
|
||||
|
||||
FairMQRegionPtr region(NewRegionFor("data", 0, 10000000));
|
||||
|
||||
while (CheckCurrentState(RUNNING))
|
||||
{
|
||||
FairMQMessagePtr msg(NewMessageFor("data", 0, region, region->GetData(), fMsgSize));
|
||||
dataOutChannel.Send(msg);
|
||||
}
|
||||
}
|
||||
|
||||
FairMQExampleRegionSampler::~FairMQExampleRegionSampler()
|
||||
{
|
||||
}
|
Reference in New Issue
Block a user