22 std::shared_ptr<LivetimeCounter> livetime_counter)
23 : m_connection_name(connection_name)
24 , m_n_tokens(initial_tokens)
25 , m_run_number(run_number)
26 , m_livetime_counter(livetime_counter)
27 , m_token_receiver(nullptr)
41 auto now = std::chrono::steady_clock::now();
43 std::chrono::milliseconds(3000)) {
45 o <<
"Open Trigger Decisions: [";
96 <<
" triggers in flight";
std::shared_ptr< LivetimeCounter > m_livetime_counter
std::shared_ptr< iomanager::ReceiverConcept< dfmessages::TriggerDecisionToken > > m_token_receiver
std::set< dfmessages::trigger_number_t > m_open_trigger_decisions
std::atomic< int > m_n_tokens
void receive_token(dfmessages::TriggerDecisionToken &token)
TokenManager(const std::string &connection_name, int initial_tokens, daqdataformats::run_number_t run_number, std::shared_ptr< LivetimeCounter > livetime_counter)
daqdataformats::run_number_t m_run_number
std::mutex m_open_trigger_decisions_mutex
void trigger_sent(dfmessages::trigger_number_t)
std::chrono::time_point< std::chrono::steady_clock > m_open_trigger_time
std::string m_connection_name
#define TLOG_DEBUG(lvl,...)
daqdataformats::trigger_number_t trigger_number_t
Copy daqdataformats::trigger_number_t.
static std::shared_ptr< iomanager::ReceiverConcept< Datatype > > get_iom_receiver(iomanager::ConnectionId const &id)
Represents a message indicating that the DataFlow has one additional buffer available.
run_number_t run_number
The run number that this token corresponds to.
trigger_number_t trigger_number
An optional trigger number that this token represents completion of.