SDL3pp
A slim C++ wrapper for SDL3
Loading...
Searching...
No Matches
Public Member Functions | List of all members
SDL::ConditionRef Struct Reference

Semi-safe reference for Condition.

Inheritance diagram for SDL::ConditionRef:
Inheritance graph
[legend]
Collaboration diagram for SDL::ConditionRef:
Collaboration graph
[legend]

Public Member Functions

 ConditionRef (ConditionParam resource) noexcept
 Constructs from ConditionParam. More...
 
 ConditionRef (ConditionRaw resource) noexcept
 Constructs from ConditionParam. More...
 
 ConditionRef (const ConditionRef &other) noexcept
 Copy constructor.
 
 ~ConditionRef ()
 Destructor.
 
constexpr Condition (std::nullptr_t) noexcept
 Default ctor.
 
constexpr Condition (const ConditionRaw resource) noexcept
 Constructs from ConditionParam. More...
 
constexpr Condition (const Condition &other)=delete
 Copy constructor.
 
constexpr Condition (Condition &&other) noexcept
 Move constructor.
 
constexpr Condition (const ConditionRef &other)=delete
 
constexpr Condition (ConditionRef &&other)=delete
 
 Condition ()
 Create a condition variable. More...
 
- Public Member Functions inherited from SDL::Condition
constexpr Condition (std::nullptr_t) noexcept
 Default ctor.
 
constexpr Condition (const ConditionRaw resource) noexcept
 Constructs from ConditionParam. More...
 
constexpr Condition (const Condition &other)=delete
 Copy constructor.
 
constexpr Condition (Condition &&other) noexcept
 Move constructor.
 
constexpr Condition (const ConditionRef &other)=delete
 
constexpr Condition (ConditionRef &&other)=delete
 
 Condition ()
 Create a condition variable. More...
 
 ~Condition ()
 Destructor.
 
constexpr Conditionoperator= (Condition &&other) noexcept
 Assignment operator.
 
constexpr ConditionRaw get () const noexcept
 Retrieves underlying ConditionRaw.
 
constexpr ConditionRaw release () noexcept
 Retrieves underlying ConditionRaw and clear this.
 
constexpr auto operator<=> (const Condition &other) const noexcept=default
 Comparison.
 
constexpr operator bool () const noexcept
 Converts to bool.
 
constexpr operator ConditionParam () const noexcept
 Converts to ConditionParam.
 
void Destroy ()
 Destroy a condition variable. More...
 
void Signal ()
 Restart one of the threads that are waiting on the condition variable. More...
 
void Broadcast ()
 Restart all threads that are waiting on the condition variable. More...
 
void Wait (MutexParam mutex)
 Wait until a condition variable is signaled. More...
 
bool WaitTimeout (MutexParam mutex, std::chrono::milliseconds timeout)
 Wait until a condition variable is signaled or a certain time has passed. More...
 

Additional Inherited Members

- Protected Member Functions inherited from SDL::Condition
constexpr Conditionoperator= (const Condition &other) noexcept=default
 Assignment operator.
 

Constructor & Destructor Documentation

◆ ConditionRef() [1/2]

SDL::ConditionRef::ConditionRef ( ConditionParam  resource)
inlinenoexcept
Parameters
resourcea ConditionRaw or Condition.

This does not takes ownership!

◆ ConditionRef() [2/2]

SDL::ConditionRef::ConditionRef ( ConditionRaw  resource)
inlinenoexcept
Parameters
resourcea ConditionRaw or Condition.

This does not takes ownership!

Member Function Documentation

◆ Condition() [1/2]

SDL::Condition::Condition ( )
inline
Postcondition
a new condition variable or nullptr on failure; call GetError() for more information.
Since
This function is available since SDL 3.2.0.
See also
Condition.Broadcast
Condition.Signal
Condition.Wait
Condition.WaitTimeout
Condition.Destroy

◆ Condition() [2/2]

constexpr SDL::Condition::Condition ( const ConditionRaw  resource)
inlineexplicitconstexprnoexcept
Parameters
resourcea ConditionRaw to be wrapped.

This assumes the ownership, call release() if you need to take back.


The documentation for this struct was generated from the following file: