17 #ifndef SHAREDMEMORYPORT_H 18 #define SHAREDMEMORYPORT_H 22 #include <rtm/idl/SharedMemorySkel.h> 25 #define DEFAULT_DATA_SIZE 8 26 #define DEFAULT_SHARED_MEMORY_SIZE 2097152 53 :
public virtual POA_OpenRTM::PortSharedMemory,
54 public virtual PortableServer::RefCountServantBase
127 virtual void create_memory(::CORBA::ULongLong memory_size,
const char *shm_address)
128 throw (CORBA::SystemException);
146 virtual void open_memory(::CORBA::ULongLong memory_size,
const char *shm_address)
147 throw (CORBA::SystemException);
161 virtual void close_memory(::CORBA::Boolean unlink =
false)
162 throw (CORBA::SystemException);
180 virtual void write(cdrMemoryStream& data);
195 virtual void read(cdrMemoryStream& data);
212 virtual void setInterface(::OpenRTM::PortSharedMemory_ptr sm)
213 throw (CORBA::SystemException);
229 virtual void setEndian(::CORBA::Boolean endian)
230 throw (CORBA::SystemException);
246 virtual ::OpenRTM::PortStatus
put()
247 throw (CORBA::SystemException);
263 virtual ::OpenRTM::PortStatus
get()
264 throw (CORBA::SystemException);
266 virtual ::OpenRTM::PortSharedMemory_ptr
getObjRef();
280 #pragma warning( default : 4290 ) 283 #endif // RTC_RTOBJECT virtual ~SharedMemoryPort()
デストラクタ
SharedMemoryPort()
コンストラクタ
virtual void open_memory(::CORBA::ULongLong memory_size, const char *shm_address)
共有メモリのマッピングを行う
virtual int string_to_MemorySize(std::string size_str)
文字列で指定したデータサイズを数値に変換する 1M → 1048576 1k → 1024 100 → 100
coil::SharedMemory m_shmem
Definition: SharedMemoryPort.h:272
virtual void write(cdrMemoryStream &data)
データを書き込む 先頭8byteにデータサイズを書き込み、その後ろにデータを書き込む 設定したデータサイズが...
virtual ::OpenRTM::PortStatus put()
データの送信を知らせる
virtual void create_memory(::CORBA::ULongLong memory_size, const char *shm_address)
共有メモリの初期化 windowsではページングファイル上に領域を確保する Linuxでは/dev/shm以下にファイルを...
virtual void setEndian(::CORBA::Boolean endian)
エンディアンを設定する
SharedMemory クラス
Definition: SharedMemory.h:53
::OpenRTM::PortSharedMemory_var m_smInterface
Definition: SharedMemoryPort.h:270
virtual ::OpenRTM::PortSharedMemory_ptr getObjRef()
virtual void setInterface(::OpenRTM::PortSharedMemory_ptr sm)
通信先のCORBAインターフェースを登録する 登録する事により共有メモリの初期化したときに、通信先でもマッ...
SharedMemory クラス
Definition: SharedMemoryPort.h:52
bool m_endian
Definition: SharedMemoryPort.h:271
virtual void read(cdrMemoryStream &data)
データを読み込む
virtual void close_memory(::CORBA::Boolean unlink=false)
マッピングした共有メモリをアンマップする