29 static TFragWriteLoop*
Get(std::string name =
"", std::string fOutputFilename =
"");
38 std::shared_ptr<ThreadsafeQueue<std::shared_ptr<const TFragment>>>&
InputQueue()
64 TFragWriteLoop(std::string name,
const std::string& fOutputFilename);
66 void WriteEvent(
const std::shared_ptr<const TFragment>& event);
67 void WriteBadEvent(
const std::shared_ptr<const TBadFragment>& event);
68 void WriteScaler(
const std::shared_ptr<TEpicsFrag>& scaler);
82 std::shared_ptr<ThreadsafeQueue<std::shared_ptr<const TFragment>>>
fInputQueue;
83 std::shared_ptr<ThreadsafeQueue<std::shared_ptr<const TBadFragment>>>
fBadInputQueue;
85 std::shared_ptr<ThreadsafeQueue<std::shared_ptr<const TFragment>>>
fOutputQueue;
std::atomic_size_t & ItemsPopped()
void ClearQueue() override
size_t GetItemsPushed() override
std::string EndStatus() override
bool Iteration() override
size_t GetItemsPopped() override
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > & BadInputQueue()
TEpicsFrag * fScalerAddress
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > fBadInputQueue
void WriteBadEvent(const std::shared_ptr< const TBadFragment > &event)
TFragWriteLoop(TFragWriteLoop &&) noexcept=delete
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > fInputQueue
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > fOutputQueue
void WriteScaler(const std::shared_ptr< TEpicsFrag > &scaler)
TBadFragment * fBadEventAddress
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > & InputQueue()
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< TEpicsFrag > > > fScalerInputQueue
static TFragWriteLoop * Get(std::string name="", std::string fOutputFilename="")
TFragment * fEventAddress
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > & OutputQueue()
void WriteEvent(const std::shared_ptr< const TFragment > &event)
size_t GetRate() override
size_t GetItemsCurrent() override
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< TEpicsFrag > > > & ScalerInputQueue()
TFragWriteLoop(const TFragWriteLoop &)=delete