MWM5 Library
0.8
0.8
  • The MWM5 Library / TWELITE STAGE
  • Changes & Download
  • License
  • Getting started
    • Environment
    • Building
    • Hardware
    • Examples
      • AppTwelite_Recv
      • PAL_Recv
    • Using Library
      • Parser
      • Terminal
  • References
    • Parser
      • TWESERCMD
        • IParser
        • AsciiParser
      • TWEFMT
        • TwePacket, spTwePacket
          • E_PKT
          • idenify_packet_type()
          • newTwePacket()
          • refTwePacket()
        • Packet Types
          • TwePacketTwelite
            • DataTwelite
          • TwePacketPal
            • DataPal
            • E_PAL_PCB
            • PalBase
              • PalMag
              • PalAmb
              • PalMot
    • Terminal
      • TWETERM
        • ESC Sequence
        • TermAttr
        • ITerm
        • TWETerm_M5_Console
      • TWEFONT
        • FontDef
        • createFont???()
        • drawChar()
        • queryFont()
    • Basics
      • TWE
        • IStreamOut
        • Print Formatted
      • TWEUTILS
        • FixedQueue
        • SimpleBuffer
          • SmplBuf_Byte
GitBook提供
このページ内
  • バッファのブロックサイズ
  • メソッド
  • FixedQueue() - コンストラクタ
  • push()
  • pop()
  • front()
  • empty()
PDFとしてエクスポート
  1. References
  2. Basics
  3. TWEUTILS

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() - コンストラクタ

FixedQueue(std::size_t size)

sizeを最大値としてキューを生成します。

push()

bool push(T value)

キューに要素を追加します。キューが一杯になると何もせずfalseを返します。

pop()

void pop()

キューから要素を削除します。

front()

T& std::queue<T>::front()

要素にアクセスします。

empty()

bool std::queue<T>::empty()

キューが空の場合trueを返します。

前へTWEUTILS次へSimpleBuffer

最終更新 5 年前