#include <SharedMemoryBlock.h>
Public Member Functions | |
shm_handle | allocateBlock (boost::interprocess::managed_shared_memory &segment, const char *name, uint32_t size) |
shm_handle | findHandle (boost::interprocess::managed_shared_memory &segment, const char *name) |
std::vector< SharedMemBlock > | getBlockList () const |
void | reallocateBlock (boost::interprocess::managed_shared_memory &segment, shm_handle &shm, uint32_t size) |
void | resetAllBlocks (boost::interprocess::managed_shared_memory &segment) |
void | resetBlock (boost::interprocess::managed_shared_memory &segment, shm_handle &shm) |
template<class M > | |
void | serialize (boost::interprocess::managed_shared_memory &segment, shm_handle &dest, const M &msg) |
SharedMemoryBlock () | |
template<class Base > | |
bool | wait_data (boost::interprocess::managed_shared_memory &segment, shm_handle &src, Base &msg) |
Protected Member Functions | |
void | check_global_clients (boost::interprocess::scoped_lock< boost::interprocess::interprocess_mutex > &lock) |
shm_handle | connectBlock (boost::interprocess::managed_shared_memory &segment, uint32_t handle) |
template<class Base > | |
void | deserialize (boost::interprocess::managed_shared_memory &segment, shm_handle &src, Base &msg) |
void | register_global_client () |
void | unregister_global_client () |
Protected Attributes | |
boost::interprocess::interprocess_condition | cond |
SharedMemoryBlockDescriptor | descriptors [ROSSharedMemoryNumBlock] |
boost::interprocess::interprocess_mutex | mutex |
int32_t | num_clients |
Definition at line 30 of file SharedMemoryBlock.h.
Definition at line 41 of file SharedMemoryBlock.h.
shm_handle sharedmem_transport::SharedMemoryBlock::allocateBlock | ( | boost::interprocess::managed_shared_memory & | segment, |
const char * | name, | ||
uint32_t | size | ||
) |
Definition at line 33 of file SharedMemoryBlock.cpp.
void sharedmem_transport::SharedMemoryBlock::check_global_clients | ( | boost::interprocess::scoped_lock< boost::interprocess::interprocess_mutex > & | lock | ) | [inline, protected] |
Definition at line 126 of file SharedMemoryBlock.h.
shm_handle sharedmem_transport::SharedMemoryBlock::connectBlock | ( | boost::interprocess::managed_shared_memory & | segment, |
uint32_t | handle | ||
) | [protected] |
Definition at line 7 of file SharedMemoryBlock.cpp.
void sharedmem_transport::SharedMemoryBlock::deserialize | ( | boost::interprocess::managed_shared_memory & | segment, |
shm_handle & | src, | ||
Base & | msg | ||
) | [inline, protected] |
Definition at line 110 of file SharedMemoryBlock.h.
shm_handle sharedmem_transport::SharedMemoryBlock::findHandle | ( | boost::interprocess::managed_shared_memory & | segment, |
const char * | name | ||
) |
Definition at line 15 of file SharedMemoryBlock.cpp.
std::vector< SharedMemBlock > sharedmem_transport::SharedMemoryBlock::getBlockList | ( | ) | const |
Definition at line 140 of file SharedMemoryBlock.cpp.
void sharedmem_transport::SharedMemoryBlock::reallocateBlock | ( | boost::interprocess::managed_shared_memory & | segment, |
shm_handle & | shm, | ||
uint32_t | size | ||
) |
Definition at line 93 of file SharedMemoryBlock.cpp.
void sharedmem_transport::SharedMemoryBlock::register_global_client | ( | ) | [inline, protected] |
Definition at line 135 of file SharedMemoryBlock.h.
void sharedmem_transport::SharedMemoryBlock::resetAllBlocks | ( | boost::interprocess::managed_shared_memory & | segment | ) |
Definition at line 83 of file SharedMemoryBlock.cpp.
void sharedmem_transport::SharedMemoryBlock::resetBlock | ( | boost::interprocess::managed_shared_memory & | segment, |
shm_handle & | shm | ||
) |
Definition at line 70 of file SharedMemoryBlock.cpp.
void sharedmem_transport::SharedMemoryBlock::serialize | ( | boost::interprocess::managed_shared_memory & | segment, |
shm_handle & | dest, | ||
const M & | msg | ||
) | [inline] |
Definition at line 82 of file SharedMemoryBlock.h.
void sharedmem_transport::SharedMemoryBlock::unregister_global_client | ( | ) | [inline, protected] |
Definition at line 142 of file SharedMemoryBlock.h.
bool sharedmem_transport::SharedMemoryBlock::wait_data | ( | boost::interprocess::managed_shared_memory & | segment, |
shm_handle & | src, | ||
Base & | msg | ||
) | [inline] |
Definition at line 56 of file SharedMemoryBlock.h.
boost::interprocess::interprocess_condition sharedmem_transport::SharedMemoryBlock::cond [protected] |
Definition at line 34 of file SharedMemoryBlock.h.
SharedMemoryBlockDescriptor sharedmem_transport::SharedMemoryBlock::descriptors[ROSSharedMemoryNumBlock] [protected] |
Definition at line 36 of file SharedMemoryBlock.h.
boost::interprocess::interprocess_mutex sharedmem_transport::SharedMemoryBlock::mutex [protected] |
Definition at line 33 of file SharedMemoryBlock.h.
int32_t sharedmem_transport::SharedMemoryBlock::num_clients [protected] |
Definition at line 35 of file SharedMemoryBlock.h.