OpenRTM-aist-Python 2.0.2
|
公開メンバ関数 | |
__init__ (self) | |
__del__ (self) | |
string_to_MemorySize (self, size_str) | |
create_memory (self, memory_size, shm_address) | |
open_memory (self, memory_size, shm_address) | |
close_memory (self, unlink=False) | |
write (self, data) | |
read (self) | |
setInterface (self, sm) | |
setEndian (self, endian) | |
put (self) | |
get (self) | |
SharedMemory クラス
共有メモリ操作クラス CORBAによる通信により、mmapの初期化、終了などがリモートに操作できる
OpenRTM_aist.SharedMemory.SharedMemory.__init__ | ( | self | ) |
コンストラクタ
コンストラクタ
self |
OpenRTM_aist.InPortSHMProvider.InPortSHMProvider, OpenRTM_aist.OutPortSHMProvider.OutPortSHMProviderで再実装されています。
OpenRTM_aist.SharedMemory.SharedMemory.__del__ | ( | self | ) |
デストラクタ
デストラクタ
self |
OpenRTM_aist.InPortSHMProvider.InPortSHMProvider, OpenRTM_aist.OutPortSHMProvider.OutPortSHMProviderで再実装されています。
OpenRTM_aist.SharedMemory.SharedMemory.close_memory | ( | self, | |
unlink = False ) |
マッピングした共有メモリをアンマップする
self | |
unlink | Linuxで/dev/shm以下に作成したファイルを削除する場合にTrueにする |
void close_memory(boolean unlink);
OpenRTM_aist.SharedMemory.SharedMemory.create_memory | ( | self, | |
memory_size, | |||
shm_address ) |
共有メモリの初期化 windowsではページングファイル上に領域を確保する Linuxでは/dev/shm以下にファイルを作成する 作成したファイルの内容を仮想アドレスにマッピングする
self | |
memory_size | 共有メモリのサイズ |
shm_address | 空間名 |
void create_memory(int memory_size, string shm_address);
OpenRTM_aist.SharedMemory.SharedMemory.get | ( | self | ) |
OpenRTM_aist.SharedMemory.SharedMemory.open_memory | ( | self, | |
memory_size, | |||
shm_address ) |
共有メモリのマッピングを行う
self | |
memory_size | 共有メモリのサイズ @parama shm_address 空間名 |
void open_memory(int memory_size, string shm_address);
OpenRTM_aist.SharedMemory.SharedMemory.put | ( | self | ) |
OpenRTM_aist.SharedMemory.SharedMemory.read | ( | self | ) |
データを読み込む
self |
cdrMemoryStream read(data);
OpenRTM_aist.SharedMemory.SharedMemory.setEndian | ( | self, | |
endian ) |
エンディアンを設定する
self | |
endian | エンディアン |
void setEndian(bool endian);
OpenRTM_aist.SharedMemory.SharedMemory.setInterface | ( | self, | |
sm ) |
通信先のCORBAインターフェースを登録する 登録する事により共有メモリの初期化したときに、通信先でもマッピングをやり直すことができる
self | |
sm | SharedMemoryのオブジェクトリファレンス |
void setInterface(.OpenRTM.PortSharedMemory_var sm);
OpenRTM_aist.SharedMemory.SharedMemory.string_to_MemorySize | ( | self, | |
size_str ) |
文字列で指定したデータサイズを数値に変換する 1M → 1048576 1k → 1024 100 → 100
self | |
size_str | データサイズ(文字列) |
int string_to_MemorySize(string size_str);
OpenRTM_aist.SharedMemory.SharedMemory.write | ( | self, | |
data ) |
データを書き込む 先頭8byteにデータサイズを書き込み、その後ろにデータを書き込む 設定したデータサイズが共有メモリのサイズを上回った場合、共有メモリの初期化を行う
self | |
data | 書き込むデータ |
void write(const cdrMemoryStream& data);