Public Member Functions | Private Attributes | List of all members
multisense::legacy::FrameNotifier< T > Class Template Reference

#include <channel.hh>

Public Member Functions

 FrameNotifier ()=default
 
void set_and_notify (const T &in_frame)
 Copy a frame into the local storage, and notify all waiters that the frame is valid. More...
 
std::optional< T > wait ()
 
template<class Rep , class Period >
std::optional< T > wait (const std::optional< std::chrono::duration< Rep, Period >> &timeout)
 Wait for the notifier to be valid. If the timeout is invalid, will wait forever. More...
 
 ~FrameNotifier ()
 

Private Attributes

std::condition_variable m_cv
 
std::optional< T > m_frame
 
std::mutex m_mutex
 

Detailed Description

template<typename T>
class multisense::legacy::FrameNotifier< T >

Definition at line 57 of file LibMultiSense/include/details/legacy/channel.hh.

Constructor & Destructor Documentation

◆ FrameNotifier()

template<typename T >
multisense::legacy::FrameNotifier< T >::FrameNotifier ( )
default

◆ ~FrameNotifier()

template<typename T >
multisense::legacy::FrameNotifier< T >::~FrameNotifier ( )
inline

Member Function Documentation

◆ set_and_notify()

template<typename T >
void multisense::legacy::FrameNotifier< T >::set_and_notify ( const T &  in_frame)
inline

Copy a frame into the local storage, and notify all waiters that the frame is valid.

Definition at line 71 of file LibMultiSense/include/details/legacy/channel.hh.

◆ wait() [1/2]

template<typename T >
std::optional<T> multisense::legacy::FrameNotifier< T >::wait ( )
inline

◆ wait() [2/2]

template<typename T >
template<class Rep , class Period >
std::optional<T> multisense::legacy::FrameNotifier< T >::wait ( const std::optional< std::chrono::duration< Rep, Period >> &  timeout)
inline

Wait for the notifier to be valid. If the timeout is invalid, will wait forever.

Definition at line 82 of file LibMultiSense/include/details/legacy/channel.hh.

Member Data Documentation

◆ m_cv

template<typename T >
std::condition_variable multisense::legacy::FrameNotifier< T >::m_cv
private

◆ m_frame

template<typename T >
std::optional<T> multisense::legacy::FrameNotifier< T >::m_frame
private

◆ m_mutex

template<typename T >
std::mutex multisense::legacy::FrameNotifier< T >::m_mutex
private

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


multisense_lib
Author(s):
autogenerated on Thu Apr 17 2025 02:49:10