Apollo  6.0
Open source self driving car software
Public Types | Public Member Functions | List of all members
apollo::cyber::base::BoundedQueue< T > Class Template Reference

#include <bounded_queue.h>

Collaboration diagram for apollo::cyber::base::BoundedQueue< T >:
Collaboration graph

Public Types

using value_type = T
 
using size_type = uint64_t
 

Public Member Functions

 BoundedQueue ()
 
BoundedQueueoperator= (const BoundedQueue &other)=delete
 
 BoundedQueue (const BoundedQueue &other)=delete
 
 ~BoundedQueue ()
 
bool Init (uint64_t size)
 
bool Init (uint64_t size, WaitStrategy *strategy)
 
bool Enqueue (const T &element)
 
bool Enqueue (T &&element)
 
bool WaitEnqueue (const T &element)
 
bool WaitEnqueue (T &&element)
 
bool Dequeue (T *element)
 
bool WaitDequeue (T *element)
 
uint64_t Size ()
 
bool Empty ()
 
void SetWaitStrategy (WaitStrategy *WaitStrategy)
 
void BreakAllWait ()
 
uint64_t Head ()
 
uint64_t Tail ()
 
uint64_t Commit ()
 

Member Typedef Documentation

◆ size_type

template<typename T>
using apollo::cyber::base::BoundedQueue< T >::size_type = uint64_t

◆ value_type

template<typename T>
using apollo::cyber::base::BoundedQueue< T >::value_type = T

Constructor & Destructor Documentation

◆ BoundedQueue() [1/2]

template<typename T>
apollo::cyber::base::BoundedQueue< T >::BoundedQueue ( )
inline

◆ BoundedQueue() [2/2]

template<typename T>
apollo::cyber::base::BoundedQueue< T >::BoundedQueue ( const BoundedQueue< T > &  other)
delete

◆ ~BoundedQueue()

template<typename T >
apollo::cyber::base::BoundedQueue< T >::~BoundedQueue ( )

Member Function Documentation

◆ BreakAllWait()

template<typename T >
void apollo::cyber::base::BoundedQueue< T >::BreakAllWait ( )
inline

◆ Commit()

template<typename T>
uint64_t apollo::cyber::base::BoundedQueue< T >::Commit ( )
inline

◆ Dequeue()

template<typename T>
bool apollo::cyber::base::BoundedQueue< T >::Dequeue ( T *  element)

◆ Empty()

template<typename T >
bool apollo::cyber::base::BoundedQueue< T >::Empty ( )
inline

◆ Enqueue() [1/2]

template<typename T>
bool apollo::cyber::base::BoundedQueue< T >::Enqueue ( const T &  element)

◆ Enqueue() [2/2]

template<typename T>
bool apollo::cyber::base::BoundedQueue< T >::Enqueue ( T &&  element)

◆ Head()

template<typename T>
uint64_t apollo::cyber::base::BoundedQueue< T >::Head ( )
inline

◆ Init() [1/2]

template<typename T >
bool apollo::cyber::base::BoundedQueue< T >::Init ( uint64_t  size)
inline

◆ Init() [2/2]

template<typename T >
bool apollo::cyber::base::BoundedQueue< T >::Init ( uint64_t  size,
WaitStrategy strategy 
)

◆ operator=()

template<typename T>
BoundedQueue& apollo::cyber::base::BoundedQueue< T >::operator= ( const BoundedQueue< T > &  other)
delete

◆ SetWaitStrategy()

template<typename T >
void apollo::cyber::base::BoundedQueue< T >::SetWaitStrategy ( WaitStrategy WaitStrategy)
inline

◆ Size()

template<typename T >
uint64_t apollo::cyber::base::BoundedQueue< T >::Size ( )
inline

◆ Tail()

template<typename T>
uint64_t apollo::cyber::base::BoundedQueue< T >::Tail ( )
inline

◆ WaitDequeue()

template<typename T>
bool apollo::cyber::base::BoundedQueue< T >::WaitDequeue ( T *  element)

◆ WaitEnqueue() [1/2]

template<typename T>
bool apollo::cyber::base::BoundedQueue< T >::WaitEnqueue ( const T &  element)

◆ WaitEnqueue() [2/2]

template<typename T>
bool apollo::cyber::base::BoundedQueue< T >::WaitEnqueue ( T &&  element)

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