19#include "pw_chrono/system_clock.h"
20#include "pw_preprocessor/util.h"
24#include "pw_sync_backend/binary_semaphore_native.h"
45 using native_handle_type = backend::NativeBinarySemaphoreHandle;
95 chrono::SystemClock::time_point deadline);
99 [[nodiscard]] static constexpr ptrdiff_t
max() noexcept {
100 return backend::kBinarySemaphoreMaxValue;
103 [[nodiscard]] native_handle_type native_handle();
107 backend::NativeBinarySemaphore native_type_;
114#include "pw_sync_backend/binary_semaphore_inline.h"
129bool pw_sync_BinarySemaphore_TryAcquireFor(
131bool pw_sync_BinarySemaphore_TryAcquireUntil(
134ptrdiff_t pw_sync_BinarySemaphore_Max(
void);
Definition: binary_semaphore.h:43
bool try_acquire_until(chrono::SystemClock::time_point deadline)
bool try_acquire() noexcept
bool try_acquire_for(chrono::SystemClock::duration timeout)
static constexpr ptrdiff_t max() noexcept
Definition: binary_semaphore.h:99
Definition: binary_semaphore.h:26
Definition: system_clock.h:228
Definition: system_clock.h:232