Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

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

typedef vtkObject vtkDataCompressor::Superclass
 

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 *  type  )  [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 *  type  )  [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 Mon Jan 21 23:39:34 2008 for VTK by  doxygen 1.4.3-20050530