Fawkes API  Fawkes Development Version

FUSE image content. More...

#include <>>

Inheritance diagram for firevision::FuseImageContent:

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::Timecapture_time () const
 Get capture time. More...
 
virtual void serialize ()
 Serialize message content. More...
 
- Public Member Functions inherited from firevision::FuseMessageContent
 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

- Protected Member Functions inherited from firevision::FuseMessageContent
void copy_payload (size_t offset, void *buf, size_t len)
 Copy payload into payload buffer to a specified offset. More...
 
- Protected Attributes inherited from firevision::FuseMessageContent
void * _payload
 Pointer to payload. More...
 
size_t _payload_size
 Payloda size. More...
 

Detailed Description

FUSE image content.

Author
Tim Niemueller

Definition at line 39 of file fuse_image_content.h.

Constructor & Destructor Documentation

◆ FuseImageContent() [1/3]

◆ FuseImageContent() [2/3]

firevision::FuseImageContent::FuseImageContent ( uint32_t  type,
void *  payload,
size_t  payload_size 
)

◆ FuseImageContent() [3/3]

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.

Parameters
image_formatimage format
image_idimage ID
bufferimage buffer, encoded according to image_format
buffer_sizesize of buffer in bytes
colorspacecolor space
widthwidth of image in pixels
heightheight of image in pixels
capture_time_secoptional seconds part of the capture time
capture_time_usecoptional 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.

◆ ~FuseImageContent()

firevision::FuseImageContent::~FuseImageContent ( )

Destructor.

Definition at line 157 of file fuse_image_content.cpp.

Member Function Documentation

◆ buffer()

unsigned char * firevision::FuseImageContent::buffer ( ) const

Image buffer.

Returns
image buffer

Definition at line 166 of file fuse_image_content.cpp.

Referenced by FireVisionNetworkTool::fuse_inbound_received().

◆ buffer_size()

size_t firevision::FuseImageContent::buffer_size ( ) const

Get size of buffer.

Returns
size of buffer returned by buffer()

Definition at line 176 of file fuse_image_content.cpp.

Referenced by FireVisionNetworkTool::fuse_inbound_received(), and FuseImageContent().

◆ capture_time()

fawkes::Time * firevision::FuseImageContent::capture_time ( ) const

◆ colorspace()

unsigned int firevision::FuseImageContent::colorspace ( ) const

Get colorspace.

Returns
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().

◆ decompress()

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.

Parameters
yuv422_planar_bufferan already allocated buffer where the decompressed image will be stored.
buffer_sizesize 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.

◆ format()

unsigned int firevision::FuseImageContent::format ( ) const

Get image format.

Returns
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().

◆ pixel_height()

unsigned int firevision::FuseImageContent::pixel_height ( ) const

Get image height.

Returns
height of image in pixels

Definition at line 196 of file fuse_image_content.cpp.

References firevision::FUSE_image_message_header_t::height.

Referenced by FireVisionNetworkTool::fuse_inbound_received().

◆ pixel_width()

unsigned int firevision::FuseImageContent::pixel_width ( ) const

Get image width.

Returns
width of image in pixels

Definition at line 186 of file fuse_image_content.cpp.

References firevision::FUSE_image_message_header_t::width.

Referenced by FireVisionNetworkTool::fuse_inbound_received().

◆ serialize()

void firevision::FuseImageContent::serialize ( )
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.


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