collection2  v0.6.0
Loading...
Searching...
No Matches
Public Member Functions | List of all members
collection2::Queue< Element, Size > Class Template Reference

キュー More...

#include <queue.hpp>

Public Member Functions

 Queue (Element *const data, const Size &dataSize)
 内部データを扱う領域とそのサイズを指定してキューを初期化 More...
 
 Queue (const Queue &)=delete
 
Queueoperator= (const Queue &)=delete
 
OperationResult enqueue (const Element &data)
 キューにデータを追加 More...
 
OperationResult dequeue (Element *const data)
 キューからデータを取り出し More...
 
Size capacity () const
 キューの全体長を返す More...
 
Size amount () const
 現在キュー内にあるデータ数を返す More...
 
bool hasSpace () const
 キューに値を追加できるか More...
 
bool isEmpty () const
 キューが空かどうか More...
 

Detailed Description

template<typename Element, typename Size = size_t>
class collection2::Queue< Element, Size >

キュー

Template Parameters
Element
Size

Constructor & Destructor Documentation

◆ Queue()

template<typename Element , typename Size >
collection2::Queue< Element, Size >::Queue ( Element *const  data,
const Size &  dataSize 
)

内部データを扱う領域とそのサイズを指定してキューを初期化

Parameters
data内部データ保管用領域
dataSize領域サイズ
Note
領域サイズは2の冪乗であるべきです。それ以外の値を指定した場合、2の冪数のうち領域のサイズを下回らない最大のものが選択されます(15 -> 8, 34 -> 32).

Member Function Documentation

◆ enqueue()

template<typename Element , typename Size >
OperationResult collection2::Queue< Element, Size >::enqueue ( const Element &  data)

キューにデータを追加

Parameters
data追加するデータ
Returns
OperationResult 操作結果

◆ dequeue()

template<typename Element , typename Size >
OperationResult collection2::Queue< Element, Size >::dequeue ( Element *const  data)

キューからデータを取り出し

Parameters
data取り出したデータの格納先
Returns
OperationResult 操作結果

◆ capacity()

template<typename Element , typename Size = size_t>
Size collection2::Queue< Element, Size >::capacity ( ) const
inline

キューの全体長を返す

Returns
buffer_size_t キュー長

◆ amount()

template<typename Element , typename Size = size_t>
Size collection2::Queue< Element, Size >::amount ( ) const
inline

現在キュー内にあるデータ数を返す

Returns
buffer_size_t キュー内に存在するデータの数

◆ hasSpace()

template<typename Element , typename Size = size_t>
bool collection2::Queue< Element, Size >::hasSpace ( ) const
inline

キューに値を追加できるか

Returns
bool

◆ isEmpty()

template<typename Element , typename Size = size_t>
bool collection2::Queue< Element, Size >::isEmpty ( ) const
inline

キューが空かどうか

Returns
bool

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