CbmRoot
Loading...
Searching...
No Matches
CbmStsDigiSource.h
Go to the documentation of this file.
1/* Copyright (C) 2019 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
2 SPDX-License-Identifier: GPL-3.0-only
3 Authors: Florian Uhlig [committer] */
4
12#ifndef CBMSTSDIGISOURCE_H_
13#define CBMSTSDIGISOURCE_H_
14#include "FairMQDevice.h"
15
16#include <ctime>
17#include <string>
18#include <vector>
19
20class CbmStsDigi;
21
22class CbmStsDigiSource : public FairMQDevice {
23public:
25 virtual ~CbmStsDigiSource();
26
27protected:
28 uint64_t fMaxEvents;
29
30 std::string fFileName;
31 std::vector<std::string> fInputFileList;
32 uint64_t fFileCounter;
33
34 uint64_t fEventNumber;
35 uint64_t fEventCounter;
37
38 int fMaxMemory = 0;
39
40 virtual void InitTask();
41 virtual bool ConditionalRun();
42
43private:
44 void PrintStsDigi(const CbmStsDigi*);
45 bool SendData();
46 void CalcRuntime();
47 bool IsChannelNameAllowed(std::string);
48
49 std::chrono::steady_clock::time_point fTime;
50
51 std::vector<std::string> fAllowedChannels = {"stsdigi"};
52};
53
54#endif /* CBMSTSDIGISOURCE_H_ */
std::chrono::steady_clock::time_point fTime
bool IsChannelNameAllowed(std::string)
void PrintStsDigi(const CbmStsDigi *)
std::string fFileName
virtual void InitTask()
virtual bool ConditionalRun()
std::vector< std::string > fInputFileList
List of input files.
std::vector< std::string > fAllowedChannels
Data class for a single-channel message in the STS.
Definition CbmStsDigi.h:40