13#ifndef CBMMQTSSAMPLERREPREQ_H_
14#define CBMMQTSSAMPLERREPREQ_H_
17#include "MicrosliceDescriptor.hpp"
18#include "StorableTimeslice.hpp"
19#include "Timeslice.hpp"
20#include "TimesliceSource.hpp"
22#include "FairMQDevice.h"
75 std::unique_ptr<fles::Timeslice>
GetNewTs();
86 bool SendData(
const fles::StorableTimeslice& component);
96 std::chrono::steady_clock::time_point
fTime;
109 std::vector<std::string>
fComponents = {
"mvdcomponent",
"stscomponent",
"richcomponent",
"muchcomponent",
110 "trdcomponent",
"tofcomponent",
"psdcomponent",
"t0component"};
111 std::vector<int>
fSysId = {0x20, 0x10, 0x30, 0x50, 0x40, 0x60, 0x80, 0x90};
112 std::vector<bool>
fComponentActive = {
false,
false,
false,
false,
false,
false,
false,
false};
115 std::vector<std::vector<uint32_t>>
fvvCompPerSysId = {{}, {}, {}, {}, {}, {}, {}, {}};
std::chrono::system_clock::time_point fLastPublishTime
std::deque< std::vector< bool > > fdbCompSentFlags
uint64_t fulMaxTimeslices
bool CreateCombinedComponentsPerBlock(std::string sBlockName)
std::string fsChannelNameHistosInput
TObjArray fArrayHisto
Array of histograms to send to the histogram server.
std::deque< std::unique_ptr< fles::Timeslice > > fdpTimesliceBuffer
Buffering of partially sent timeslices, limited by fulHighWaterMark.
std::string fsChannelNameMissedTs
std::vector< std::vector< uint32_t > > fvvCompPerSysId
bool SendMissedTsIdx(std::vector< uint64_t > vIndices)
bool PrepareCompListPerBlock()
bool IsChannelNameAllowed(std::string)
std::vector< int > fSysId
bool HandleRequest(FairMQMessagePtr &, int)
std::vector< std::string > fComponents
std::vector< bool > fComponentActive
std::vector< std::pair< std::string, std::string > > fvpsCanvasConfig
bool fbConfigSent
Flag indicating whether the histograms and canvases configurations were already published.
std::vector< std::pair< std::string, std::string > > fvpsHistosFolder
Vector of string pairs with ( HistoName, FolderPath ) to send to the histogram server.
std::string fsHistosSuffix
virtual ~CbmMQTsSamplerRepReq()
uint64_t fulHighWaterMark
bool PrepareCompListPerSysId()
std::vector< std::vector< uint32_t > > fvvCompPerBlock
uint64_t fulMessageCounter
bool SendHistoConfAndData()
bool fbEofFound
Flag indicating the EOF was reached to avoid sending an emergency STOP.
std::string fsChannelNameCommands
std::unique_ptr< fles::Timeslice > GetNewTs()
double_t fdMinPublishTime
std::vector< std::pair< std::string, std::set< uint16_t > > > fvBlocksToSend
TH1I * fhTsRate
Histograms.
std::string fsChannelNameTsRequest
bool SendData(const fles::StorableTimeslice &component)
double_t fdMaxPublishTime
std::vector< std::string > fvsInputFileList
List of input files.
bool CreateCombinedComponentsPerSysId(std::string sSystemName)
std::chrono::steady_clock::time_point fTime
bool fbListCompPerBlockReady
bool fbListCompPerSysIdReady
fles::TimesliceSource * fSource
bool CreateAndSendFullTs()
bool SendCommand(std::string sCommand)