FixedQueue
固定長キュー
std::queueは、ブロック単位でのメモリ確保を行い動的にキューのサイズを拡張していきますが、本クラスではメモリサイズを抑制し固定長のキューを実装します。
template<typename T>
class FixedQueue : public std::queue<T> { ... };本クラスはstd::queueを継承しています。
バッファのブロックサイズ
GCCの場合はバッファのブロックサイズを定義することができます。
本ライブラリでの利用を想定し以下のように64バイトにしています。
#if __GNUC__
#define _GLIBCXX_DEQUE_BUF_SIZE 64
// smaller chunk for deque in GCC, the dafalt size
// 512bytes are too big for embedded systems.
#endif
#include <deque>
#include <queue>メソッド
FixedQueue() - コンストラクタ
sizeを最大値としてキューを生成します。
push()
キューに要素を追加します。キューが一杯になると何もせずfalseを返します。
pop()
キューから要素を削除します。
front()
要素にアクセスします。
empty()
キューが空の場合trueを返します。
最終更新