Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# IO/vtkZLibDataCompressor.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkZLibDataCompressor.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00039 #ifndef __vtkZLibDataCompressor_h
    00040 #define __vtkZLibDataCompressor_h
    00041
    00042 #include "vtkDataCompressor.h"
    00043
    00044 class VTK_IO_EXPORT vtkZLibDataCompressor : public vtkDataCompressor
    00045 {
    00046 public:
    00047   vtkTypeRevisionMacro(vtkZLibDataCompressor,vtkDataCompressor);
    00048   void PrintSelf(ostream& os, vtkIndent indent);
    00049   static vtkZLibDataCompressor* New();
    00050
    00055   unsigned long GetMaximumCompressionSpace(unsigned long size);
    00056
    00057 protected:
    00058   vtkZLibDataCompressor();
    00059   ~vtkZLibDataCompressor();
    00060
    00061   // Compression method required by vtkDataCompressor.
    00062   unsigned long CompressBuffer(const unsigned char* uncompressedData,
    00063                                unsigned long uncompressedSize,
    00064                                unsigned char* compressedData,
    00065                                unsigned long compressionSpace);
    00066   // Decompression method required by vtkDataCompressor.
    00067   unsigned long UncompressBuffer(const unsigned char* compressedData,
    00068                                  unsigned long compressedSize,
    00069                                  unsigned char* uncompressedData,
    00070                                  unsigned long uncompressedSize);
    00071 private:
    00072   vtkZLibDataCompressor(const vtkZLibDataCompressor&);  // Not implemented.
    00073   void operator=(const vtkZLibDataCompressor&);  // Not implemented.
    00074 };
    00075
    00076 #endif