8#ifndef RAD_STOP_TOKEN_HPP
9#define RAD_STOP_TOKEN_HPP
45 std::atomic<
unsigned> m_num_sources;
47 std::atomic<
unsigned> m_num_tokens;
49 std::atomic<
bool> m_stop_requested;
90 [[nodiscard]]
bool StopPossible() const noexcept;
95 bool operator==(
StopToken const& rhs) const noexcept;
96 bool operator!=(
StopToken const& rhs) const noexcept;
124 bool operator==(
StopSource const& rhs) const noexcept;
125 bool operator!=(
StopSource const& rhs) const noexcept;
136 [[nodiscard]]
bool StopPossible() const noexcept;
141 [[nodiscard]]
StopToken GetToken() const noexcept;
Definition stopToken.hpp:112
StopSource(StopSource &&) noexcept=default
Definition stopToken.hpp:62
StopToken() noexcept=default
Definition actionsApp.cpp:23
Definition stopToken.hpp:23
void IncSources() noexcept
Definition stopToken.cpp:9
void IncTokens() noexcept
Definition stopToken.cpp:17
void DecTokens() noexcept
Definition stopToken.cpp:21
unsigned GetNumSources() const noexcept
Definition stopToken.cpp:25
bool RequestStop() noexcept
Definition stopToken.cpp:37
StopState() noexcept=default
bool StopRequested() const noexcept
Definition stopToken.cpp:33
void DecSources() noexcept
Definition stopToken.cpp:13
unsigned GetNumTokens() const noexcept
Definition stopToken.cpp:29