OpenRTM-aist 2.0.2
|
#include <OutPortSHMProvider.h>
公開メンバ関数 | |
OutPortSHMProvider () | |
コンストラクタ | |
~OutPortSHMProvider () override | |
デストラクタ | |
void | init (coil::Properties &prop) override |
設定初期化 | |
void | setBuffer (CdrBufferBase *buffer) override |
バッファをセットする | |
void | setListener (ConnectorInfo &info, ConnectorListenersBase *listeners) override |
リスナを設定する。 | |
void | setConnector (OutPortConnector *connector) override |
Connectorを設定する。 | |
::OpenRTM::PortStatus | get () override |
[CORBA interface] バッファからデータを取得する | |
![]() | |
virtual | ~OutPortProvider () |
デストラクタ | |
virtual void | publishInterfaceProfile (SDOPackage::NVList &prop) |
InterfaceProfile情報を公開する | |
virtual bool | publishInterface (SDOPackage::NVList &prop) |
Interface情報を公開する | |
![]() | |
SharedMemoryPort () | |
コンストラクタ | |
~SharedMemoryPort () override | |
デストラクタ | |
virtual int | string_to_MemorySize (std::string size_str) |
文字列で指定したデータサイズを数値に変換する 1M → 1048576 1k → 1024 100 → 100 | |
void | create_memory (::CORBA::ULongLong memory_size, const char *shm_address) override |
共有メモリの初期化 windowsではページングファイル上に領域を確保する Linuxでは/dev/shm以下にファイルを作成する 作成したファイルの内容を仮想アドレスにマッピングする | |
void | open_memory (::CORBA::ULongLong memory_size, const char *shm_address) override |
共有メモリのマッピングを行う | |
void | close_memory (::CORBA::Boolean unlink=false) override |
マッピングした共有メモリをアンマップする | |
virtual void | write (ByteData &data) |
データを書き込む 先頭8byteにデータサイズを書き込み、その後ろにデータを書き込む 設定したデータサイズが共有メモリのサイズを上回った場合、共有メモリの初期化を行う | |
virtual void | read (ByteData &data) |
データを読み込む | |
void | setInterface (::OpenRTM::PortSharedMemory_ptr sm) override |
通信先のCORBAインターフェースを登録する 登録する事により共有メモリの初期化したときに、通信先でもマッピングをやり直すことができる | |
void | setEndian (::CORBA::Boolean endian) override |
エンディアンを設定する | |
::OpenRTM::PortStatus | put () override |
データの送信を知らせる | |
::OpenRTM::PortStatus | get () override |
データの送信を要求する | |
virtual::OpenRTM::PortSharedMemory_ptr | getObjRef () |
その他の継承メンバ | |
![]() | |
void | setPortType (const char *port_type) |
ポートタイプを設定する | |
void | setDataType (const char *data_type) |
データタイプを設定する | |
void | setInterfaceType (const char *interface_type) |
インターフェースタイプを設定する | |
void | setDataFlowType (const char *dataflow_type) |
データフロータイプを設定する | |
void | setSubscriptionType (const char *subs_type) |
サブスクリプションタイプを設定する | |
![]() | |
SDOPackage::NVList | m_properties |
ポートプロファイルを保持するプロパティ | |
Logger | rtclog |
ロガーストリーム | |
![]() | |
::OpenRTM::PortSharedMemory_var | m_smInterface {OpenRTM::PortSharedMemory::_nil()} |
bool | m_endian {true} |
coil::SharedMemory | m_shmem |
RTC::OutPortSHMProvider::OutPortSHMProvider | ( | ) |
コンストラクタ
コンストラクタ
|
override |
デストラクタ
デストラクタ
|
override |
[CORBA interface] バッファからデータを取得する
設定された内部バッファからデータを取得する。
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |
|
overridevirtual |