Fawkes API
Fawkes Development Version
|
25 #include <core/exception.h>
26 #include <core/exceptions/system.h>
27 #include <fvutils/compression/imagecompressor.h>
28 #include <fvutils/writers/compressed.h>
29 #include <utils/system/console_colors.h>
35 namespace firevision {
55 image_compressor = ic;
70 if (image_compressor != NULL) {
80 if (image_compressor != NULL) {
90 if (image_compressor != NULL) {
98 if (image_compressor != NULL) {
105 unsigned char *comp_buffer = (
unsigned char *)malloc(comp_buffer_size);
109 if (fwrite(comp_buffer, image_compressor->
compressed_size(), 1, f) != 1) {
115 throw fawkes::Exception(
"Supplied ImageCompressor does neither support compressing "
116 " to file nor to a memory buffer. Cannot write.");
128 image_compressor = ic;
virtual bool supports_compression_destination(CompressionDestination cd)=0
@ COMP_DEST_MEM
write compressed image to buffer in memory
virtual size_t recommended_compressed_buffer_size()=0
@ COMP_DEST_FILE
write compressed image to file
virtual void set_dimensions(unsigned int width, unsigned int height)
Set dimensions of image in pixels.
virtual void set_compression_destination(CompressionDestination cd)=0
virtual void set_filename(const char *filename)
Set filename.
virtual void set_image_buffer(colorspace_t cspace, unsigned char *buffer)=0
virtual void set_image_dimensions(unsigned int width, unsigned int height)=0
virtual void set_image_compressor(ImageCompressor *ic)
Set image compressor.
virtual size_t compressed_size()=0
virtual void compress()=0
CompressedImageWriter(ImageCompressor *ic=NULL)
Constructor.
virtual void set_destination_buffer(unsigned char *buf, unsigned int buf_size)=0
virtual ~CompressedImageWriter()
Destructor.
virtual void set_filename(const char *filename)=0
virtual void set_buffer(colorspace_t cspace, unsigned char *buffer)
Set image buffer.