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

dox/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 =========================================================================*/ 00029 #ifndef __vtkZLibDataCompressor_h 00030 #define __vtkZLibDataCompressor_h 00031 00032 #include "vtkDataCompressor.h" 00033 00034 class VTK_IO_EXPORT vtkZLibDataCompressor : public vtkDataCompressor 00035 { 00036 public: 00037 vtkTypeRevisionMacro(vtkZLibDataCompressor,vtkDataCompressor); 00038 void PrintSelf(ostream& os, vtkIndent indent); 00039 static vtkZLibDataCompressor* New(); 00040 00045 unsigned long GetMaximumCompressionSpace(unsigned long size); 00046 00047 protected: 00048 vtkZLibDataCompressor(); 00049 ~vtkZLibDataCompressor(); 00050 00051 // Compression method required by vtkDataCompressor. 00052 unsigned long CompressBuffer(const unsigned char* uncompressedData, 00053 unsigned long uncompressedSize, 00054 unsigned char* compressedData, 00055 unsigned long compressionSpace); 00056 // Decompression method required by vtkDataCompressor. 00057 unsigned long UncompressBuffer(const unsigned char* compressedData, 00058 unsigned long compressedSize, 00059 unsigned char* uncompressedData, 00060 unsigned long uncompressedSize); 00061 private: 00062 vtkZLibDataCompressor(const vtkZLibDataCompressor&); // Not implemented. 00063 void operator=(const vtkZLibDataCompressor&); // Not implemented. 00064 }; 00065 00066 #endif