jp.go.aist.rtm.RTC.buffer
クラス RingBuffer<DataType>

java.lang.Object
  上位を拡張 jp.go.aist.rtm.RTC.buffer.RingBuffer<DataType>
型パラメータ:
DataType - バッファ内のデータ型を指定します。
すべての実装されたインタフェース:
BufferBase<DataType>

public class RingBuffer<DataType>
extends java.lang.Object
implements BufferBase<DataType>

リング状のバッファを持つバッファ実装です。 バッファ全体がデータで埋まった場合、以降のデータは古いデータから順次上書きされていきます。 これにより、直近のバッファ長分のデータのみが残ります。


コンストラクタの概要
RingBuffer(int length)
          コンストラクタです。
 
メソッドの概要
 DataType get()
          バッファからデータを読み込みます。
 void init(DataType data)
          バッファ全体を指定されたデータで埋めます。
 boolean isEmpty()
          バッファが空かどうか判定します。
 boolean isFull()
          バッファがフルかどうか判定します。
 boolean isNew()
          バッファ中に、まだ読み取られていないデータがあるかどうか判定します。
 int length()
          バッファ長を取得します。
 void put(DataType data)
          バッファにデータを書き込みます。
 boolean read(DataRef<DataType> valueRef)
          バッファからデータを読み込みます。
 boolean write(DataType value)
          バッファにデータを書き込みます。
 
クラス java.lang.Object から継承されたメソッド
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

RingBuffer

public RingBuffer(int length)

コンストラクタです。

パラメータ:
length - バッファ長
メソッドの詳細

init

public void init(DataType data)

バッファ全体を指定されたデータで埋めます。

パラメータ:
data - バッファ全体に設定されるデータ

length

public int length()

バッファ長を取得します。

定義:
インタフェース BufferBase<DataType> 内の length
戻り値:
バッファ長

write

public boolean write(DataType value)

バッファにデータを書き込みます。

定義:
インタフェース BufferBase<DataType> 内の write
パラメータ:
value - 書き込むデータ
戻り値:
書き込みに成功した場合はtrueを、さもなくばfalseを返します。

read

public boolean read(DataRef<DataType> valueRef)

バッファからデータを読み込みます。

定義:
インタフェース BufferBase<DataType> 内の read
パラメータ:
valueRef - 読み込んだデータを受け取るためのDataRefオブジェクト
戻り値:
読み込みに成功した場合はtrueを、さもなくばfalseを返します。

isFull

public boolean isFull()

バッファがフルかどうか判定します。

定義:
インタフェース BufferBase<DataType> 内の isFull
戻り値:
バッファがフルならばtrue、さもなくばfalseを返します。

isEmpty

public boolean isEmpty()

バッファが空かどうか判定します。

定義:
インタフェース BufferBase<DataType> 内の isEmpty
戻り値:
バッファが空ならばtrue、さもなくばfalseを返します。

isNew

public boolean isNew()

バッファ中に、まだ読み取られていないデータがあるかどうか判定します。

定義:
インタフェース BufferBase<DataType> 内の isNew
戻り値:
読み取られていないデータがあればtrueを、さもなくばfalseを返します。

put

public void put(DataType data)

バッファにデータを書き込みます。

定義:
インタフェース BufferBase<DataType> 内の put
パラメータ:
data - 書き込むデータ

get

public DataType get()

バッファからデータを読み込みます。

定義:
インタフェース BufferBase<DataType> 内の get
戻り値:
読み込んだデータ