OpenRTM-aist
1.2.1
|
BufferBase 抽象クラス [詳解]
#include <BufferBase.h>
公開メンバ関数 | |
virtual BUFFERSTATUS_ENUM | ~BufferBase (void) |
仮想デストラクタ [詳解] | |
virtual void | init (const coil::Properties &prop)=0 |
バッファの設定 [詳解] | |
virtual size_t | length (void) const =0 |
バッファの長さを取得する [詳解] | |
virtual ReturnCode | length (size_t n)=0 |
バッファの長さをセットする [詳解] | |
virtual ReturnCode | reset ()=0 |
バッファの状態をリセットする [詳解] | |
virtual DataType * | wptr (long int n=0)=0 |
バッファの現在の書込み要素のポインタ [詳解] | |
virtual ReturnCode | advanceWptr (long int n=1, bool unlock_enable=true)=0 |
書込みポインタを進める [詳解] | |
virtual ReturnCode | put (const DataType &value)=0 |
バッファにデータを書き込む [詳解] | |
virtual ReturnCode | write (const DataType &value, long int sec=-1, long int nsec=-1)=0 |
バッファにデータを書き込む [詳解] | |
virtual size_t | writable () const =0 |
バッファに書込み可能な要素数 [詳解] | |
virtual bool | full (void) const =0 |
バッファfullチェック [詳解] | |
virtual DataType * | rptr (long int n=0)=0 |
バッファの現在の読み出し要素のポインタ [詳解] | |
virtual ReturnCode | advanceRptr (long int n=1, bool unlock_enable=true)=0 |
読み出しポインタを進める [詳解] | |
virtual ReturnCode | get (DataType &value)=0 |
バッファからデータを読み出す [詳解] | |
virtual DataType & | get ()=0 |
バッファからデータを読み出す [詳解] | |
virtual ReturnCode | read (DataType &value, long int sec=-1, long int nsec=-1)=0 |
バッファからデータを読み出す [詳解] | |
virtual size_t | readable () const =0 |
バッファから読み出し可能な要素数 [詳解] | |
virtual bool | empty (void) const =0 |
バッファemptyチェック [詳解] | |
その他の継承メンバ | |
![]() | |
enum | Enum { BUFFER_OK = 0, BUFFER_ERROR, BUFFER_FULL, BUFFER_EMPTY, NOT_SUPPORTED, TIMEOUT, PRECONDITION_NOT_MET } |
BufferStatus リターンコード [詳解] | |
![]() | |
static const char * | toString (Enum status) |
BufferStatus リターンコードを文字列に変換 [詳解] | |
BufferBase 抽象クラス
種々のバッファのための抽象インターフェースクラス。 具象バッファクラスは、以下の純粋仮想関数の実装を提供しなければならない。 <DataType>としてバッファ内で保持するデータ型を指定する。
publicインターフェースとして以下のものを提供する。
書込み関連
読み出し関連
DataType | バッファに格納するデータ型 |
|
inlinevirtual |
仮想デストラクタ
参照先 RTC::BufferBase< DataType >::advanceRptr(), RTC::BufferBase< DataType >::advanceWptr(), RTC::BufferBase< DataType >::empty(), RTC::BufferBase< DataType >::full(), RTC::BufferBase< DataType >::init(), RTC::BufferBase< DataType >::length(), RTC::BufferBase< DataType >::put(), RTC::BufferBase< DataType >::read(), RTC::BufferBase< DataType >::readable(), RTC::BufferBase< DataType >::reset(), RTC::BufferBase< DataType >::rptr(), RTC::BufferBase< DataType >::wptr(), RTC::BufferBase< DataType >::writable(), RTC::BufferBase< DataType >::write().
|
pure virtual |
読み出しポインタを進める
現在の読み出し位置のポインタを n 個進める。
n | 読み出しポインタ + n の位置のポインタ |
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
書込みポインタを進める
現在の書き込み位置のポインタを n 個進める。
n | 書込みポインタ + n の位置のポインタ |
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファemptyチェック
バッファemptyチェック用純粋仮想関数
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファfullチェック
バッファfullチェック用純粋仮想関数
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファからデータを読み出す
バッファからデータを読みだす。読み出しポインタの位置は変更されない。
value | 読み出しデータ |
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファからデータを読み出す
バッファからデータを読みだす。読み出しポインタの位置は変更されない。
RTC::NullBuffer< DataType >, RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
|
pure virtual |
バッファの長さを取得する
バッファ長を取得するための純粋仮想関数
RTC::NullBuffer< DataType >, RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファの長さをセットする
バッファ長を設定する。設定不可な場合はNOT_SUPPORTEDが返る。
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファにデータを書き込む
バッファにデータを書き込む。書き込みポインタの位置は変更されない。
value | 書き込み対象データ |
RTC::NullBuffer< DataType >, RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファからデータを読み出す
バッファからデータを読み出すための純粋仮想関数
value | 読み出しデータ |
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
|
pure virtual |
バッファの状態をリセットする
バッファの読み出しポインタと書き込みポインタの位置をリセットする。
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファの現在の読み出し要素のポインタ
バッファの現在の読み出し要素のポインタまたは、n個先のポインタを返す
n | 読み出しポインタ + n の位置のポインタ |
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
バッファの現在の書込み要素のポインタ
バッファの現在の書込み要素のポインタまたは、n個先のポインタを返す
n | 書込みポインタ + n の位置のポインタ |
RTC::RingBuffer< DataType >で実装されています。
|
pure virtual |
|
pure virtual |
バッファにデータを書き込む
バッファにデータを書き込む。書き込みポインタの位置は1つすすむ。
value | 書き込み対象データ |
RTC::RingBuffer< DataType >で実装されています。