Fawkes API
Fawkes Development Version
|
FUSE image content. More...
#include <>>
Public Member Functions | |
FuseImageContent (SharedMemoryImageBuffer *b) | |
Constructor. More... | |
FuseImageContent (uint32_t type, void *payload, size_t payload_size) | |
Constructor. More... | |
FuseImageContent (FUSE_image_format_t image_format, const char *image_id, unsigned char *buffer, size_t buffer_size, colorspace_t colorspace, unsigned int width, unsigned int height, long int capture_time_sec=0, long int capture_time_usec=0) | |
Constructor. More... | |
~FuseImageContent () | |
Destructor. More... | |
unsigned char * | buffer () const |
Image buffer. More... | |
size_t | buffer_size () const |
Get size of buffer. More... | |
unsigned int | pixel_width () const |
Get image width. More... | |
unsigned int | pixel_height () const |
Get image height. More... | |
unsigned int | colorspace () const |
Get colorspace. More... | |
unsigned int | format () const |
Get image format. More... | |
void | decompress (unsigned char *yuv422_planar_buffer, size_t buffer_size) |
Decompress image data. More... | |
fawkes::Time * | capture_time () const |
Get capture time. More... | |
virtual void | serialize () |
Serialize message content. More... | |
![]() | |
FuseMessageContent () | |
Constructor. More... | |
virtual | ~FuseMessageContent () |
Virtual empty destructor. More... | |
virtual void * | payload () const |
Return pointer to payload. More... | |
virtual size_t | payload_size () const |
Return payload size. More... | |
void | free_payload () |
Free message payload. More... | |
Additional Inherited Members | |
![]() | |
void | copy_payload (size_t offset, void *buf, size_t len) |
Copy payload into payload buffer to a specified offset. More... | |
![]() | |
void * | _payload |
Pointer to payload. More... | |
size_t | _payload_size |
Payloda size. More... | |
FUSE image content.
Definition at line 39 of file fuse_image_content.h.
firevision::FuseImageContent::FuseImageContent | ( | SharedMemoryImageBuffer * | b | ) |
Constructor.
Copies data from given buffer.
b | shared memory image buffer to copy image from |
Definition at line 76 of file fuse_image_content.cpp.
References firevision::FuseMessageContent::_payload, firevision::FuseMessageContent::_payload_size, firevision::SharedMemoryImageBuffer::buffer(), firevision::FUSE_image_message_header_t::buffer_size, firevision::SharedMemoryImageBuffer::capture_time(), firevision::FUSE_image_message_header_t::capture_time_sec, firevision::FUSE_image_message_header_t::capture_time_usec, firevision::FUSE_image_message_header_t::colorspace, firevision::SharedMemoryImageBuffer::colorspace(), firevision::FUSE_image_message_header_t::format, firevision::FUSE_image_message_header_t::height, firevision::SharedMemoryImageBuffer::height(), firevision::FUSE_image_message_header_t::image_id, firevision::SharedMemoryImageBuffer::image_id(), fawkes::SharedMemory::lock_for_read(), firevision::FUSE_image_message_header_t::reserved, fawkes::SharedMemory::unlock(), firevision::FUSE_image_message_header_t::width, and firevision::SharedMemoryImageBuffer::width().
firevision::FuseImageContent::FuseImageContent | ( | uint32_t | type, |
void * | payload, | ||
size_t | payload_size | ||
) |
Constructor.
type | message type |
payload | payload |
payload_size | size of payload |
Definition at line 53 of file fuse_image_content.cpp.
References firevision::FuseMessageContent::_payload, firevision::FuseMessageContent::_payload_size, firevision::FUSE_image_message_header_t::buffer_size, firevision::FUSE_image_message_header_t::capture_time_sec, firevision::FUSE_image_message_header_t::capture_time_usec, firevision::FuseMessageContent::payload(), and firevision::FuseMessageContent::payload_size().
firevision::FuseImageContent::FuseImageContent | ( | FUSE_image_format_t | image_format, |
const char * | image_id, | ||
unsigned char * | buffer, | ||
size_t | buffer_size, | ||
colorspace_t | colorspace, | ||
unsigned int | width, | ||
unsigned int | height, | ||
long int | capture_time_sec = 0 , |
||
long int | capture_time_usec = 0 |
||
) |
Constructor.
Copies data from given buffer.
image_format | image format |
image_id | image ID |
buffer | image buffer, encoded according to image_format |
buffer_size | size of buffer in bytes |
colorspace | color space |
width | width of image in pixels |
height | height of image in pixels |
capture_time_sec | optional seconds part of the capture time |
capture_time_usec | optional microseconds part of the capture time |
Definition at line 122 of file fuse_image_content.cpp.
References firevision::FuseMessageContent::_payload, firevision::FuseMessageContent::_payload_size, buffer_size(), firevision::FUSE_image_message_header_t::buffer_size, firevision::FUSE_image_message_header_t::capture_time_sec, firevision::FUSE_image_message_header_t::capture_time_usec, firevision::FUSE_image_message_header_t::colorspace, firevision::FUSE_image_message_header_t::format, firevision::FUSE_image_message_header_t::height, firevision::FUSE_image_message_header_t::image_id, firevision::FUSE_image_message_header_t::reserved, and firevision::FUSE_image_message_header_t::width.
firevision::FuseImageContent::~FuseImageContent | ( | ) |
Destructor.
Definition at line 157 of file fuse_image_content.cpp.
unsigned char * firevision::FuseImageContent::buffer | ( | ) | const |
Image buffer.
Definition at line 166 of file fuse_image_content.cpp.
Referenced by FireVisionNetworkTool::fuse_inbound_received().
size_t firevision::FuseImageContent::buffer_size | ( | ) | const |
Get size of buffer.
Definition at line 176 of file fuse_image_content.cpp.
Referenced by FireVisionNetworkTool::fuse_inbound_received(), and FuseImageContent().
fawkes::Time * firevision::FuseImageContent::capture_time | ( | ) | const |
Get capture time.
Definition at line 226 of file fuse_image_content.cpp.
References firevision::FUSE_image_message_header_t::capture_time_sec, and firevision::FUSE_image_message_header_t::capture_time_usec.
unsigned int firevision::FuseImageContent::colorspace | ( | ) | const |
Get colorspace.
Definition at line 206 of file fuse_image_content.cpp.
References firevision::FUSE_image_message_header_t::colorspace.
Referenced by FireVisionNetworkTool::fuse_inbound_received().
void firevision::FuseImageContent::decompress | ( | unsigned char * | yuv422_planar_buffer, |
size_t | buffer_size | ||
) |
Decompress image data.
This is a utility method which can be used on clients to decompress compressed image payload. Since every time a new decompressor is created and deleted this method can be slower compared to decompressing the data directly in your application so use with care.
yuv422_planar_buffer | an already allocated buffer where the decompressed image will be stored. |
buffer_size | size of yuv422_planar_buffer in bytes. Must be big enough to store a YUV422_PLANAR image of the image dimensions of the compressed data. |
Definition at line 253 of file fuse_image_content.cpp.
References firevision::FUSE_image_message_header_t::colorspace, firevision::JpegImageDecompressor::decompress(), firevision::FUSE_image_message_header_t::format, firevision::FUSE_image_message_header_t::height, firevision::ImageDecompressor::set_compressed_buffer(), firevision::ImageDecompressor::set_decompressed_buffer(), and firevision::FUSE_image_message_header_t::width.
unsigned int firevision::FuseImageContent::format | ( | ) | const |
Get image format.
Definition at line 216 of file fuse_image_content.cpp.
References firevision::FUSE_image_message_header_t::format.
Referenced by FireVisionNetworkTool::fuse_inbound_received().
unsigned int firevision::FuseImageContent::pixel_height | ( | ) | const |
Get image height.
Definition at line 196 of file fuse_image_content.cpp.
References firevision::FUSE_image_message_header_t::height.
Referenced by FireVisionNetworkTool::fuse_inbound_received().
unsigned int firevision::FuseImageContent::pixel_width | ( | ) | const |
Get image width.
Definition at line 186 of file fuse_image_content.cpp.
References firevision::FUSE_image_message_header_t::width.
Referenced by FireVisionNetworkTool::fuse_inbound_received().
|
virtual |
Serialize message content.
Generate a single contiguous buffer. Make _payload point to this buffer and _payload_size contain the size of the buffer.
Implements firevision::FuseMessageContent.
Definition at line 236 of file fuse_image_content.cpp.