rgbd
Public Member Functions | Private Member Functions | Private Attributes | List of all members
rgbd::ServerSHM Class Reference

Server which uses shared memory, this only works for clients on the same machine. More...

#include <server_shm.h>

Public Member Functions

void initialize (const std::string &name)
 initialize Initialize shared memory server More...
 
void send (const Image &image)
 send Write a new image to the shared memory More...
 
 ServerSHM ()
 Constructor. More...
 
 ~ServerSHM ()
 Destructor. More...
 

Private Member Functions

void checkSHMThreadFunc (const float frequency)
 Check if the SHM can be opened. More...
 

Private Attributes

BufferHeaderbuffer_header_
 
std::unique_ptr< std::threadcheck_shm_thread_ptr_
 
uint64_t depth_data_size_
 
unsigned char * image_data_
 
uint64_t image_data_size_
 
boost::interprocess::mapped_region mem_buffer_header_
 
boost::interprocess::mapped_region mem_image_
 
ros::NodeHandle nh_
 
uint64_t rgb_data_size_
 
std::string shared_mem_name_
 
boost::interprocess::shared_memory_object shm_
 

Detailed Description

Server which uses shared memory, this only works for clients on the same machine.

Definition at line 22 of file server_shm.h.

Constructor & Destructor Documentation

◆ ServerSHM()

rgbd::ServerSHM::ServerSHM ( )

Constructor.

buffer_header_ and image_data_ pointers are initialized to nullptr

Definition at line 22 of file server_shm.cpp.

◆ ~ServerSHM()

rgbd::ServerSHM::~ServerSHM ( )

Destructor.

Shared memory object is deleted, buffer_header_ and image_data_ are also deleted

Definition at line 28 of file server_shm.cpp.

Member Function Documentation

◆ checkSHMThreadFunc()

void rgbd::ServerSHM::checkSHMThreadFunc ( const float  frequency)
private

Check if the SHM can be opened.

Parameters
frequencyFrequency of checking

Definition at line 131 of file server_shm.cpp.

◆ initialize()

void rgbd::ServerSHM::initialize ( const std::string name)

initialize Initialize shared memory server

Parameters
nameFully resolved server name

Definition at line 40 of file server_shm.cpp.

◆ send()

void rgbd::ServerSHM::send ( const Image image)

send Write a new image to the shared memory

Parameters
imageImage to be written to the shared memory

Definition at line 48 of file server_shm.cpp.

Member Data Documentation

◆ buffer_header_

BufferHeader* rgbd::ServerSHM::buffer_header_
private

Definition at line 62 of file server_shm.h.

◆ check_shm_thread_ptr_

std::unique_ptr<std::thread> rgbd::ServerSHM::check_shm_thread_ptr_
private

Definition at line 72 of file server_shm.h.

◆ depth_data_size_

uint64_t rgbd::ServerSHM::depth_data_size_
private

Definition at line 66 of file server_shm.h.

◆ image_data_

unsigned char* rgbd::ServerSHM::image_data_
private

Definition at line 63 of file server_shm.h.

◆ image_data_size_

uint64_t rgbd::ServerSHM::image_data_size_
private

Definition at line 67 of file server_shm.h.

◆ mem_buffer_header_

boost::interprocess::mapped_region rgbd::ServerSHM::mem_buffer_header_
private

Definition at line 59 of file server_shm.h.

◆ mem_image_

boost::interprocess::mapped_region rgbd::ServerSHM::mem_image_
private

Definition at line 60 of file server_shm.h.

◆ nh_

ros::NodeHandle rgbd::ServerSHM::nh_
private

Definition at line 69 of file server_shm.h.

◆ rgb_data_size_

uint64_t rgbd::ServerSHM::rgb_data_size_
private

Definition at line 65 of file server_shm.h.

◆ shared_mem_name_

std::string rgbd::ServerSHM::shared_mem_name_
private

Definition at line 55 of file server_shm.h.

◆ shm_

boost::interprocess::shared_memory_object rgbd::ServerSHM::shm_
private

Definition at line 57 of file server_shm.h.


The documentation for this class was generated from the following files: