vtkImageCompressor.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageCompressor.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
29 #ifndef vtkImageCompressor_h
30 #define vtkImageCompressor_h
31 
32 #include "vtkObject.h"
33 #include "vtkPVVTKExtensionsFiltersRenderingModule.h" // needed for export macro
34 
37 
39 {
40 public:
41  vtkTypeMacro(vtkImageCompressor, vtkObject);
42  void PrintSelf(ostream& os, vtkIndent indent) override;
43 
45 
48  void SetInput(vtkUnsignedCharArray* input);
49  vtkGetObjectMacro(Input, vtkUnsignedCharArray);
51 
53 
56  vtkGetObjectMacro(Output, vtkUnsignedCharArray);
57  void SetOutput(vtkUnsignedCharArray*);
59 
61 
65  vtkSetMacro(LossLessMode, int);
66  vtkGetMacro(LossLessMode, int);
68 
73  virtual int Compress() = 0;
74 
79  virtual int Decompress() = 0;
80 
84  virtual void SetImageResolution(int width, int height);
85 
89  virtual void SaveConfiguration(vtkMultiProcessStream* stream);
90 
95  virtual bool RestoreConfiguration(vtkMultiProcessStream* stream);
96 
101  virtual const char* SaveConfiguration();
102 
109  virtual const char* RestoreConfiguration(const char* stream);
110 
111 protected:
113 
117  ~vtkImageCompressor() override;
119 
120  // This is the array which contains the compressed data.
123 
125 
126  vtkSetStringMacro(Configuration);
127  char* Configuration;
128 
129 private:
130  vtkImageCompressor(const vtkImageCompressor&) = delete;
131  void operator=(const vtkImageCompressor&) = delete;
132 };
133 
134 #endif
void PrintSelf(ostream &os, vtkIndent indent) VTK_OVERRIDE
vtkUnsignedCharArray * Output
Superclass for image compressor/decompressor used by Composite Managers.
#define VTKPVVTKEXTENSIONSFILTERSRENDERING_EXPORT
vtkUnsignedCharArray * Input
void operator=(const vtkObjectBase &)