Fawkes API Fawkes Development Version
|
Jpeg image compressor. More...
#include <>>
Public Types | |
enum | JpegColorspace { JPEG_CS_RGB, JPEG_CS_YUV } |
JPEG color space. More... | |
Public Member Functions | |
JpegImageCompressor (unsigned int quality=80, JpegColorspace jcs=JPEG_CS_RGB) | |
Constructor. | |
virtual | ~JpegImageCompressor () |
Destructor. | |
virtual void | set_image_dimensions (unsigned int width, unsigned int height) |
Set dimensions of image to compress. | |
virtual void | set_image_buffer (colorspace_t cspace, unsigned char *buffer) |
Set image buffer to compress. | |
virtual void | set_destination_buffer (unsigned char *buf, unsigned int buf_size) |
Set destination buffer (if compressing to memory). | |
virtual size_t | compressed_size () |
Get compressed size. | |
virtual void | set_filename (const char *filename) |
Set file name. | |
virtual void | set_compression_destination (ImageCompressor::CompressionDestination cd) |
Set compression destination. | |
virtual bool | supports_compression_destination (ImageCompressor::CompressionDestination cd) |
Check if compressor supports desired compression destination. | |
virtual void | compress () |
Compress image. | |
virtual size_t | recommended_compressed_buffer_size () |
Get the recommended size for the compressed buffer. |
Jpeg image compressor.
Definition at line 34 of file jpeg_compressor.h.
JPEG color space.
Definition at line 38 of file jpeg_compressor.h.
firevision::JpegImageCompressor::JpegImageCompressor | ( | unsigned int | quality = 80 , |
JpegColorspace | jcs = JPEG_CS_RGB |
||
) |
Constructor.
quality | JPEG quality in percent |
jcs | Jpeg colorspace |
Definition at line 197 of file jpeg_compressor.cpp.
firevision::JpegImageCompressor::~JpegImageCompressor | ( | ) | [virtual] |
Destructor.
Definition at line 204 of file jpeg_compressor.cpp.
void firevision::JpegImageCompressor::compress | ( | ) | [virtual] |
Compress image.
Implements firevision::ImageCompressor.
Definition at line 210 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
size_t firevision::JpegImageCompressor::compressed_size | ( | ) | [virtual] |
Get compressed size.
Implements firevision::ImageCompressor.
Definition at line 333 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
size_t firevision::JpegImageCompressor::recommended_compressed_buffer_size | ( | ) | [virtual] |
Get the recommended size for the compressed buffer.
It is not guaranteed that this size is really enough for compression but in most cases this should be suitable.
Implements firevision::ImageCompressor.
Definition at line 339 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
void firevision::JpegImageCompressor::set_compression_destination | ( | ImageCompressor::CompressionDestination | cd | ) | [virtual] |
Set compression destination.
cd | compression destination |
Implements firevision::ImageCompressor.
Definition at line 311 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
void firevision::JpegImageCompressor::set_destination_buffer | ( | unsigned char * | buf, |
unsigned int | buf_size | ||
) | [virtual] |
Set destination buffer (if compressing to memory).
buf | buffer |
buf_size | buffer size |
Implements firevision::ImageCompressor.
Definition at line 325 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
void firevision::JpegImageCompressor::set_filename | ( | const char * | filename | ) | [virtual] |
Set file name.
filename | file name (if compressing to file) |
Implements firevision::ImageCompressor.
Definition at line 346 of file jpeg_compressor.cpp.
void firevision::JpegImageCompressor::set_image_buffer | ( | colorspace_t | cspace, |
unsigned char * | buffer | ||
) | [virtual] |
Set image buffer to compress.
cspace | colorspace of image |
buffer | buffer that contains the image |
Implements firevision::ImageCompressor.
Definition at line 302 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
void firevision::JpegImageCompressor::set_image_dimensions | ( | unsigned int | width, |
unsigned int | height | ||
) | [virtual] |
Set dimensions of image to compress.
width | width of image in pixels |
height | height of image in pixels |
Implements firevision::ImageCompressor.
Definition at line 294 of file jpeg_compressor.cpp.
Referenced by firevision::FuseServerClientThread::process_getimage_message().
bool firevision::JpegImageCompressor::supports_compression_destination | ( | ImageCompressor::CompressionDestination | cd | ) | [virtual] |
Check if compressor supports desired compression destination.
cd | compression destination |
Implements firevision::ImageCompressor.
Definition at line 318 of file jpeg_compressor.cpp.