Project
Loading...
Searching...
No Matches
ExternalFairMQDeviceProxy.cxx File Reference
#include "Framework/AlgorithmSpec.h"
#include "Framework/ConfigParamSpec.h"
#include "Framework/DataProcessingHeader.h"
#include "Framework/DataSpecUtils.h"
#include "Framework/DeviceSpec.h"
#include "Framework/ExternalFairMQDeviceProxy.h"
#include "Framework/InitContext.h"
#include "Framework/ProcessingContext.h"
#include "Framework/RawDeviceService.h"
#include "Framework/DeviceContext.h"
#include "Framework/CallbackService.h"
#include "Framework/ControlService.h"
#include "Framework/SourceInfoHeader.h"
#include "Framework/ChannelInfo.h"
#include "Framework/ConfigParamRegistry.h"
#include "Framework/RateLimiter.h"
#include "Framework/TimesliceIndex.h"
#include "Framework/TimingInfo.h"
#include "Framework/DeviceState.h"
#include "Framework/Monitoring.h"
#include "Framework/SendingPolicy.h"
#include "Headers/DataHeader.h"
#include "Headers/Stack.h"
#include "DecongestionService.h"
#include "CommonConstants/LHCConstants.h"
#include "./DeviceSpecHelpers.h"
#include "Monitoring/Monitoring.h"
#include <fairmq/Parts.h>
#include <fairmq/Device.h>
#include <uv.h>
#include <cstring>
#include <cassert>
#include <memory>
#include <optional>
#include <unordered_map>
#include <numeric>
#include <sstream>
#include <stdexcept>
#include <regex>

Go to the source code of this file.

Namespaces

namespace  o2
 a couple of static helper functions to create timestamp values for CCDB queries or override obsolete objects
 
namespace  o2::framework
 Defining PrimaryVertex explicitly as messageable.
 

Functions

std::string o2::framework::formatExternalChannelConfiguration (InputChannelSpec const &)
 helper method to format a configuration string for an external channel
 
std::string o2::framework::formatExternalChannelConfiguration (OutputChannelSpec const &)
 helper method to format a configuration string for an external channel
 
void o2::framework::sendOnChannel (fair::mq::Device &device, fair::mq::Parts &messages, std::string const &channel, size_t timeSlice)
 
void o2::framework::sendOnChannel (fair::mq::Device &device, fair::mq::Parts &messages, OutputSpec const &spec, DataProcessingHeader::StartTime tslice, ChannelRetriever &channelRetriever)
 
void o2::framework::sendOnChannel (fair::mq::Device &device, o2::header::Stack &&headerStack, fair::mq::MessagePtr &&payloadMessage, OutputSpec const &spec, ChannelRetriever &channelRetriever)
 
void o2::framework::sendOnChannel (fair::mq::Device &device, fair::mq::MessagePtr &&headerMessage, fair::mq::MessagePtr &&payloadMessage, OutputSpec const &spec, ChannelRetriever &channelRetriever)
 
void o2::framework::appendForSending (fair::mq::Device &device, o2::header::Stack &&headerStack, size_t timeSliceID, fair::mq::MessagePtr &&payloadMessage, OutputSpec const &spec, fair::mq::Parts &messageCache, ChannelRetriever &channelRetriever)
 
InjectorFunction o2::framework::o2DataModelAdaptor (OutputSpec const &spec, uint64_t startTime, uint64_t step)
 
auto o2::framework::getFinalIndex (DataHeader const &dh, size_t msgidx) -> size_t
 
void o2::framework::injectMissingData (fair::mq::Device &device, fair::mq::Parts &parts, std::vector< OutputRoute > const &routes, bool doInjectMissingData, unsigned int doPrintSizes)
 
InjectorFunction o2::framework::dplModelAdaptor (std::vector< OutputSpec > const &specs={{header::gDataOriginAny, header::gDataDescriptionAny}}, DPLModelAdapterConfig config=DPLModelAdapterConfig{})
 
InjectorFunction o2::framework::incrementalConverter (OutputSpec const &spec, o2::header::SerializationMethod method, uint64_t startTime, uint64_t step)
 
DataProcessorSpec o2::framework::specifyExternalFairMQDeviceProxy (char const *label, std::vector< OutputSpec > const &outputs, const char *defaultChannelConfig, InjectorFunction converter, uint64_t minSHM=0, bool sendTFcounter=false, bool doInjectMissingData=false, unsigned int doPrintSizes=0)
 
std::string o2::framework::defaultOutputProxyChannelSelector (InputSpec const &input, const std::unordered_map< std::string, std::vector< fair::mq::Channel > > &channels)
 Default way to select an output channel for multi-output proxy.
 
DataProcessorSpec o2::framework::specifyFairMQDeviceOutputProxy (char const *label, Inputs const &inputSpecs, const char *defaultChannelConfig)
 
DataProcessorSpec o2::framework::specifyFairMQDeviceMultiOutputProxy (char const *label, Inputs const &inputSpecs, const char *defaultChannelConfig, ChannelSelector channelSelector=defaultOutputProxyChannelSelector)