/usr/include/paraview/vtkZlibImageCompressor.h is in paraview-dev 5.0.1+dfsg1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkZlibImageCompressor.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkZlibImageCompressor - Image compressor/decompressor using Zlib.
// .SECTION Description
// This class compresses Image data using Zlib. The compression level
// varies between 1 and 9, 1 being the fastest at the cost of the
// compression ratio, 9 producing the highest compression ratio at the
// cost of speed. Optionally color depth may be reduced and alpha
// stripped/restored.
// .SECTION Thanks
// SciberQuest Inc. contributed this class.
#ifndef vtkZlibImageCompressor_h
#define vtkZlibImageCompressor_h
#include "vtkImageCompressor.h"
#include "vtkPVVTKExtensionsRenderingModule.h" // needed for export macro
class vtkZlibCompressorImageConditioner;
class vtkMultiProcessStream;
class VTKPVVTKEXTENSIONSRENDERING_EXPORT vtkZlibImageCompressor : public vtkImageCompressor
{
public:
static vtkZlibImageCompressor* New();
vtkTypeMacro(vtkZlibImageCompressor, vtkImageCompressor);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Compress/Decompress data array on the objects input with results
// in the objects output. See also Set/GetInput/Output.
virtual int Compress();
virtual int Decompress();
//BTX
// Description:
// Serialize/Restore compressor configuration (but not the data) into the stream.
virtual void SaveConfiguration(vtkMultiProcessStream *stream);
virtual bool RestoreConfiguration(vtkMultiProcessStream* stream);
//ETX
virtual const char *SaveConfiguration();
virtual const char *RestoreConfiguration(const char *stream);
// Description:
// Set compression level. A setting of 1 is the fastest producing the
// smallest compression ratio while a setting of 9 is the slowest producing
// the highest compression ratio. Zlib is loss-less regardless of level
// however, setting SetColorSpaceReduction factor to a non zero value
// will cause internal pre-processor to reduce the color space prior to
// compression which can improve compression ratio realized.
vtkSetClampMacro(CompressionLevel, int, 1, 9);
vtkGetMacro(CompressionLevel, int);
// Description:
// Set to an integer between 0 and 5. This uses the same color space reduction
// as the squirt compressor. If set to 0 no colorspace reduction is performed.
void SetColorSpace(int csId);
int GetColorSpace();
// Description:
// Set to boolean value indicating whether alpha values
// should be stripped prior to compression. Stripping alpha values will reduce
// input to compressor by 1/4 and results in speed up in compressor run time
// and of course reduced image size. Stripped alpha value are reinstated to
// 0xff during decompress.
void SetStripAlpha(int status);
int GetStripAlpha();
// Description:
// When set the implementation must use loss-less compression, otherwise
// implemnetation should user provided settings.
virtual void SetLossLessMode(int mode);
protected:
vtkZlibImageCompressor();
virtual ~vtkZlibImageCompressor();
private:
vtkZlibCompressorImageConditioner *Conditioner; // manages color space reduction and strip alpha
int CompressionLevel; // zlib compression level
private:
vtkZlibImageCompressor(const vtkZlibImageCompressor&); // Not implemented.
void operator=(const vtkZlibImageCompressor&); // Not implemented.
};
#endif
|