EyeAI
Loading...
Searching...
No Matches
MutexGuard< T >::ScopedAccess Struct Reference

#include <MutexGuard.hpp>

Public Member Functions

 ScopedAccess (T &value, std::mutex &mutex)
 
 ~ScopedAccess ()=default
 
 ScopedAccess (ScopedAccess &&) noexcept=default
 
 ScopedAccess (const ScopedAccess &)=delete
 
ScopedAccessoperator= (ScopedAccess &&) noexcept=default
 
ScopedAccessoperator= (const ScopedAccess &)=delete
 
T * operator-> ()
 
T & operator* ()
 
template<typename Index>
auto & operator[] (Index &&index)
 

Constructor & Destructor Documentation

◆ ScopedAccess() [1/3]

template<typename T>
MutexGuard< T >::ScopedAccess::ScopedAccess ( T & value,
std::mutex & mutex )
inlineexplicit

◆ ~ScopedAccess()

template<typename T>
MutexGuard< T >::ScopedAccess::~ScopedAccess ( )
default

◆ ScopedAccess() [2/3]

template<typename T>
MutexGuard< T >::ScopedAccess::ScopedAccess ( ScopedAccess && )
defaultnoexcept

◆ ScopedAccess() [3/3]

template<typename T>
MutexGuard< T >::ScopedAccess::ScopedAccess ( const ScopedAccess & )
delete

Member Function Documentation

◆ operator*()

template<typename T>
T & MutexGuard< T >::ScopedAccess::operator* ( )
inline

◆ operator->()

template<typename T>
T * MutexGuard< T >::ScopedAccess::operator-> ( )
inline

◆ operator=() [1/2]

template<typename T>
ScopedAccess & MutexGuard< T >::ScopedAccess::operator= ( const ScopedAccess & )
delete

◆ operator=() [2/2]

template<typename T>
ScopedAccess & MutexGuard< T >::ScopedAccess::operator= ( ScopedAccess && )
defaultnoexcept

◆ operator[]()

template<typename T>
template<typename Index>
auto & MutexGuard< T >::ScopedAccess::operator[] ( Index && index)
inline