としてバッファ内で保持するデータ型を指定する。
publicインターフェースとして以下のものを提供する。
- length(): バッファの長さを返す
- length(n): バッファ長をnにセットする
- reset(): バッファのポインタをリセットする
書込み関連
- wptr(n=0): 現在の書き込み対象の要素のn個先のポインタを返す。
- advanceWptr(n=1): 書込みポインタをn進める。
- put(): 現在の書き込み位置に書き込む、ポインタは進めない。
- write(): バッファに書き込む。ポインタは1つすすむ。
- writable(): 書込み可能な要素数を返す。
- full(): バッファがフル状態。
読み出し関連
- rptr(n=0): 現在の読み出し対象のn個先のポインタを返す。
- advanceRptr(n=1): 読み出しポインタをn進める。
- get(): 現在の読み出し位置から読む。ポインタは進めない。
- read(): バッファから読み出す。ポインタは1つすすむ。
- readable(): 読み出し可能要素数を返す。
- empty(): バッファが空状態。
init
void init(Properties prop)
- バッファの設定
- パラメータ:
prop
- プロパティ
reset
ReturnCode reset()
- バッファの状態をリセットする。
バッファの読み出しポインタと書き込みポインタの位置をリセットする。
- 戻り値:
- BUFFER_OK: 正常終了
NOT_SUPPORTED: リセット不可能
BUFFER_ERROR: 異常終了
wptr
DataType wptr(int n)
- バッファの現在の書込み要素のポインタ。
バッファの現在の書込み要素のポインタまたは、n個先のポインタを返す
- パラメータ:
n
- 書込みポインタ + n の位置のポインタ
- 戻り値:
- 書込み位置のポインタ
wptr
DataType wptr()
- バッファの現在の書込み要素のポインタ。
バッファの現在の書込む
- 戻り値:
- 書込み位置のポインタ
advanceWptr
ReturnCode advanceWptr(int n)
- 書込みポインタを進める。
現在の書き込み位置のポインタを n 個進める。
- パラメータ:
n
- 書込みポインタ + n の位置のポインタ
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
advanceWptr
ReturnCode advanceWptr()
- 書込みポインタを進める。
現在の書き込み位置のポインタを 1 個進める。
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
writable
int writable()
- バッファに書込み可能な要素数。
バッファに書込み可能な要素数を返す。
- 戻り値:
- 書き込み可能な要素数
full
boolean full()
- バッファfullチェック。
バッファfullチェック用純粋仮想関数
- 戻り値:
- fullチェック結果(true:バッファfull,false:バッファ空きあり)
rptr
DataType rptr(int n)
- バッファの現在の読み出し要素のポインタ。
バッファの現在の読み出し要素のポインタまたは、
n個先のポインタを返す
- パラメータ:
n
- 読み出しポインタ + n の位置のポインタ
- 戻り値:
- 読み出し位置のポインタ
rptr
DataType rptr()
- バッファの現在の読み出し要素のポインタ。
バッファの現在の読み出返す
- 戻り値:
- 読み出し位置のポインタ
advanceRptr
ReturnCode advanceRptr()
- 読み出しポインタを進める。
現在の読み出し位置のポインタを 1 個進める。
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
advanceRptr
ReturnCode advanceRptr(int n)
- 読み出しポインタを進める。
現在の読み出し位置のポインタを n 個進める。
- パラメータ:
n
- 読み出しポインタ + n の位置のポインタ
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
readable
int readable()
- バッファから読み出し可能な要素数。
バッファから読み出し可能な要素数を返す。
- 戻り値:
- 読み出し可能な要素数
empty
boolean empty()
- バッファemptyチェック。
バッファemptyチェック用純粋仮想関数
- 戻り値:
- emptyチェック結果(true:バッファempty,false:バッファデータあり)
length
int length()
- バッファの長さを取得する。
バッファ長を取得するための純粋仮想関数
- 戻り値:
- バッファ長
length
ReturnCode length(int n)
- バッファの長さをセットする。
バッファ長を設定する。設定不可な場合はNOT_SUPPORTEDが返る。
- 戻り値:
- BUFFER_OK: 正常終了
NOT_SUPPORTED: バッファ長変更不可
BUFFER_ERROR: 異常終了
write
ReturnCode write(DataType value)
- バッファにデータを書き込む。
バッファにデータを書き込む。書き込みポインタの位置は1つすすむ。
- パラメータ:
value
- 書き込み対象データ
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
write
ReturnCode write(DataType value,
int sec,
int nsec)
- バッファにデータを書き込む。
バッファにデータを書き込む。書き込みポインタの位置は1つすすむ。
- パラメータ:
value
- 書き込み対象データ
sec
- タイムアウト時間 sec (default -1: 無効)
nsec
- タイムアウト時間 nsec (default 0)
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
read
ReturnCode read(DataRef<DataType> valueRef)
- バッファからデータを読み出す。
バッファからデータを読み出すための純粋仮想関数
- パラメータ:
valueRef
- 読み込んだデータを受け取るためのDataRefオブジェクト
- 戻り値:
- データ読み出し結果
read
ReturnCode read(DataRef<DataType> valueRef,
int sec,
int nsec)
- バッファからデータを読み出す。
バッファからデータを読み出すための純粋仮想関数
- パラメータ:
valueRef
- 読み込んだデータを受け取るためのDataRefオブジェクト
sec
- タイムアウト時間 sec (default -1: 無効)
nsec
- タイムアウト時間 nsec (default 0)
- 戻り値:
- データ読み出し結果
put
ReturnCode put(DataType data)
- バッファにデータを書き込む。
バッファにデータを書き込む。書き込みポインタの位置は変更されない。
- パラメータ:
data
- 書き込むデータ
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了
get
DataType get()
- バッファからデータを読み出す。
バッファからデータを読みだす。読み出しポインタの位置は
変更されない。
- 戻り値:
- 読み込んだデータ
get
ReturnCode get(DataRef<DataType> value)
- バッファからデータを読み出す。
バッファからデータを読みだす。読み出しポインタの位置は
変更されない。
- パラメータ:
value
- 読み出しデータ
- 戻り値:
- BUFFER_OK: 正常終了
BUFFER_ERROR: 異常終了