![]() |
iipsrv 1.2
iipsrv is an advanced high-performance feature-rich image server for web-based streamed viewing and zooming of ultra high-resolution images
|
Base class for IIP output images. More...
#include <Compressor.h>
Public Member Functions | |
| Compressor (int compressionLevel) | |
| Constructor. | |
| int | getQuality () const |
| Get the current quality level. | |
| void | setResolution (float x, float y, int units) |
| Set the physical output resolution. | |
| void | setICCProfile (const std::string &profile) |
| Set the ICC profile. | |
| void | setXMPMetadata (const std::string &x) |
| Set XMP metadata. | |
| virtual unsigned int | getHeaderSize () const |
| Return the image header size. | |
| virtual unsigned char * | getHeader () |
| Return a pointer to the image header itself. | |
| virtual void | InitCompression (const RawTile &rawtile, unsigned int strip_height) |
| Initialise strip based compression. | |
| virtual unsigned int | CompressStrip (unsigned char *s, unsigned char *o, unsigned int tile_height) |
| Compress a strip of image data. | |
| virtual unsigned int | Finish (unsigned char *output) |
| Finish the strip based compression and free memory. | |
| virtual unsigned int | Compress (RawTile &t) |
| Compress an entire buffer of image data at once in one command. | |
| virtual void | addXMPMetadata (const std::string &m) |
| Add metadata to the image header. | |
| virtual const char * | getMimeType () const |
| Get mime type. | |
| virtual const char * | getSuffix () const |
| Get file suffix. | |
| virtual CompressionType | getCompressionType () const |
| Get compression type. | |
Protected Member Functions | |
| virtual void | writeICCProfile () |
| Write ICC profile. | |
| virtual void | writeXMPMetadata () |
| Write XMP metadata. | |
Protected Attributes | |
| int | Q |
| Quality or compression level for all image types. | |
| unsigned char * | header |
| Pointer to the header data for the output image. | |
| unsigned int | header_size |
| Size of the header data. | |
| float | dpi_x |
| Physical resolution for X and Y directions. | |
| float | dpi_y |
| int | dpi_units |
| Resolution units. | |
| std::string | icc |
| ICC Profile. | |
| std::string | xmp |
| XMP metadata. | |
Base class for IIP output images.
|
inline |
Constructor.
| compressionLevel | default compression level for codec |
|
inlinevirtual |
Add metadata to the image header.
| m | metadata |
|
inlinevirtual |
Compress an entire buffer of image data at once in one command.
| t | tile of image data |
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Compress a strip of image data.
| s | source image data |
| o | output buffer |
| tile_height | pixel height of the tile we are compressing |
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Finish the strip based compression and free memory.
| output | output buffer |
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Get compression type.
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Return a pointer to the image header itself.
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Return the image header size.
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Get mime type.
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Get file suffix.
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inlinevirtual |
Initialise strip based compression.
If we are doing a strip based encoding, we need to first initialise with InitCompression, then compress a single strip at a time using CompressStrip and finally clean up using Finish
| rawtile | tile containing the image to be compressed |
| strip_height | pixel height of the strip we want to compress |
Reimplemented in JPEGCompressor, PNGCompressor, and WebPCompressor.
|
inline |
|
inline |
|
protected |
Resolution units.
Units can be 0 for unknown, 1 for dots/inch or 2 for dots/cm
Referenced by setResolution().