MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
SeqLock.hpp File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  MayaFlux::Memory::Seqlock
 Single-writer multiple-reader sequence lock for fixed-size data regions. More...
 
class  MayaFlux::Memory::SeqlockArray
 Indexed collection of independent, equal-ranked Seqlock instances. More...
 
class  MayaFlux::Memory::SeqlockWriteGuard
 RAII guard that brackets a Seqlock write region. More...
 

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Memory
 

Functions

template<std::invocable Fn>
auto MayaFlux::Memory::seqlock_read (const Seqlock &lock, uint32_t max_attempts, Fn &&fn) -> std::optional< std::invoke_result_t< Fn > >
 Invoke a read functor under a Seqlock with a bounded retry count.
 
template<std::invocable Fn>
requires std::is_void_v<std::invoke_result_t<Fn>>
bool MayaFlux::Memory::seqlock_read_void (const Seqlock &lock, uint32_t max_attempts, Fn &&fn)
 Invoke a void read functor under a Seqlock with a bounded retry count.