vtkDataCompressor Class Reference

#include <vtkDataCompressor.h>

Inheritance diagram for vtkDataCompressor:

Inheritance graph
[legend]
Collaboration diagram for vtkDataCompressor:

Collaboration graph
[legend]

List of all members.


Detailed Description

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 31 of file vtkDataCompressor.h.


Public Types

typedef vtkObject Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual unsigned long GetMaximumCompressionSpace (unsigned long size)=0
unsigned long Compress (const unsigned char *uncompressedData, unsigned long uncompressedSize, unsigned char *compressedData, unsigned long compressionSpace)
unsigned long Uncompress (const unsigned char *compressedData, unsigned long compressedSize, unsigned char *uncompressedData, unsigned long uncompressedSize)
vtkUnsignedCharArrayCompress (const unsigned char *uncompressedData, unsigned long uncompressedSize)
vtkUnsignedCharArrayUncompress (const unsigned char *compressedData, unsigned long compressedSize, unsigned long uncompressedSize)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkDataCompressorSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkDataCompressor ()
 ~vtkDataCompressor ()
virtual unsigned long CompressBuffer (const unsigned char *uncompressedData, unsigned long uncompressedSize, unsigned char *compressedData, unsigned long compressionSpace)=0
virtual unsigned long UncompressBuffer (const unsigned char *compressedData, unsigned long compressedSize, unsigned char *uncompressedData, unsigned long uncompressedSize)=0

Member Typedef Documentation

Reimplemented from vtkObject.

Reimplemented in vtkZLibDataCompressor.

Definition at line 34 of file vtkDataCompressor.h.


Constructor & Destructor Documentation

vtkDataCompressor::vtkDataCompressor (  )  [protected]

vtkDataCompressor::~vtkDataCompressor (  )  [protected]


Member Function Documentation

virtual const char* vtkDataCompressor::GetClassName (  )  [virtual]

Reimplemented from vtkObject.

Reimplemented in vtkZLibDataCompressor.

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 vtkTypeRevisionMacro 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 vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkZLibDataCompressor.

static vtkDataCompressor* vtkDataCompressor::SafeDownCast ( vtkObject o  )  [static]

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 unsigned long vtkDataCompressor::GetMaximumCompressionSpace ( unsigned long  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.

unsigned long vtkDataCompressor::Compress ( const unsigned char *  uncompressedData,
unsigned long  uncompressedSize,
unsigned char *  compressedData,
unsigned long  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.

unsigned long vtkDataCompressor::Uncompress ( const unsigned char *  compressedData,
unsigned long  compressedSize,
unsigned char *  uncompressedData,
unsigned long  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 ( const unsigned char *  uncompressedData,
unsigned long  uncompressedSize 
)

Compress the given data. A vtkUnsignedCharArray containing the compressed data is returned with a reference count of 1.

vtkUnsignedCharArray* vtkDataCompressor::Uncompress ( const unsigned char *  compressedData,
unsigned long  compressedSize,
unsigned long  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 unsigned long vtkDataCompressor::CompressBuffer ( const unsigned char *  uncompressedData,
unsigned long  uncompressedSize,
unsigned char *  compressedData,
unsigned long  compressionSpace 
) [protected, pure virtual]

Implemented in vtkZLibDataCompressor.

virtual unsigned long vtkDataCompressor::UncompressBuffer ( const unsigned char *  compressedData,
unsigned long  compressedSize,
unsigned char *  uncompressedData,
unsigned long  uncompressedSize 
) [protected, pure virtual]

Implemented in vtkZLibDataCompressor.


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

Generated on Sat Dec 27 13:21:43 2008 for VTK by  doxygen 1.5.6