VTK
|
Abstract interface for data compression classes. More...
#include <vtkDataCompressor.h>
Public Types | |
typedef vtkObject | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkDataCompressor * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
virtual size_t | GetMaximumCompressionSpace (size_t size)=0 |
size_t | Compress (unsigned char const *uncompressedData, size_t uncompressedSize, unsigned char *compressedData, size_t compressionSpace) |
size_t | Uncompress (unsigned char const *compressedData, size_t compressedSize, unsigned char *uncompressedData, size_t uncompressedSize) |
vtkUnsignedCharArray * | Compress (unsigned char const *uncompressedData, size_t uncompressedSize) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkDataCompressor * | SafeDownCast (vtkObjectBase *o) |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
virtual size_t | CompressBuffer (unsigned char const *uncompressedData, size_t uncompressedSize, unsigned char *compressedData, size_t compressionSpace)=0 |
virtual size_t | UncompressBuffer (unsigned char const *compressedData, size_t compressedSize, unsigned char *uncompressedData, size_t uncompressedSize)=0 |
vtkUnsignedCharArray * | Uncompress (unsigned char const *compressedData, size_t compressedSize, size_t uncompressedSize) |
vtkDataCompressor () | |
~vtkDataCompressor () |
Abstract interface for data compression classes.
vtkDataCompressor provides a universal interface for data compression. Subclasses provide one compression method and one decompression method. The public interface to all compressors remains the same, and is defined by this class.
Definition at line 32 of file vtkDataCompressor.h.
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
Definition at line 35 of file vtkDataCompressor.h.
vtkDataCompressor::vtkDataCompressor | ( | ) | [protected] |
Uncompress the given data. A vtkUnsignedCharArray containing the compressed data is returned with a reference count of 1. The size of the uncompressed data must be known by the caller. It should be transmitted from the compressor by a means outside of this class.
vtkDataCompressor::~vtkDataCompressor | ( | ) | [protected] |
Uncompress the given data. A vtkUnsignedCharArray containing the compressed data is returned with a reference count of 1. The size of the uncompressed data must be known by the caller. It should be transmitted from the compressor by a means outside of this class.
static int vtkDataCompressor::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
virtual int vtkDataCompressor::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
static vtkDataCompressor* vtkDataCompressor::SafeDownCast | ( | vtkObjectBase * | o | ) | [static] |
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
virtual vtkObjectBase* vtkDataCompressor::NewInstanceInternal | ( | ) | const [protected, virtual] |
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
vtkDataCompressor* vtkDataCompressor::NewInstance | ( | ) | const |
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
void vtkDataCompressor::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkObject.
Reimplemented in vtkZLibDataCompressor.
virtual size_t vtkDataCompressor::GetMaximumCompressionSpace | ( | size_t | size | ) | [pure virtual] |
Get the maximum space that may be needed to store data of the given uncompressed size after compression. This is the minimum size of the output buffer that can be passed to the four-argument Compress method.
Implemented in vtkZLibDataCompressor.
size_t vtkDataCompressor::Compress | ( | unsigned char const * | uncompressedData, |
size_t | uncompressedSize, | ||
unsigned char * | compressedData, | ||
size_t | compressionSpace | ||
) |
Compress the given input data buffer into the given output buffer. The size of the output buffer must be at least as large as the value given by GetMaximumCompressionSpace for the given input size.
size_t vtkDataCompressor::Uncompress | ( | unsigned char const * | compressedData, |
size_t | compressedSize, | ||
unsigned char * | uncompressedData, | ||
size_t | uncompressedSize | ||
) |
Uncompress the given input data into the given output buffer. The size of the uncompressed data must be known by the caller. It should be transmitted from the compressor by a means outside of this class.
vtkUnsignedCharArray* vtkDataCompressor::Compress | ( | unsigned char const * | uncompressedData, |
size_t | uncompressedSize | ||
) |
Compress the given data. A vtkUnsignedCharArray containing the compressed data is returned with a reference count of 1.
vtkUnsignedCharArray* vtkDataCompressor::Uncompress | ( | unsigned char const * | compressedData, |
size_t | compressedSize, | ||
size_t | uncompressedSize | ||
) |
Uncompress the given data. A vtkUnsignedCharArray containing the compressed data is returned with a reference count of 1. The size of the uncompressed data must be known by the caller. It should be transmitted from the compressor by a means outside of this class.
virtual size_t vtkDataCompressor::CompressBuffer | ( | unsigned char const * | uncompressedData, |
size_t | uncompressedSize, | ||
unsigned char * | compressedData, | ||
size_t | compressionSpace | ||
) | [protected, pure virtual] |
Implemented in vtkZLibDataCompressor.
virtual size_t vtkDataCompressor::UncompressBuffer | ( | unsigned char const * | compressedData, |
size_t | compressedSize, | ||
unsigned char * | uncompressedData, | ||
size_t | uncompressedSize | ||
) | [protected, pure virtual] |
Implemented in vtkZLibDataCompressor.