vtkImageCompressor.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Kitware Inc.
2 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
3 // SPDX-License-Identifier: BSD-3-Clause
18 #ifndef vtkImageCompressor_h
19 #define vtkImageCompressor_h
20 
21 #include "vtkObject.h"
22 #include "vtkPVVTKExtensionsFiltersRenderingModule.h" // needed for export macro
23 
26 
28 {
29 public:
30  vtkTypeMacro(vtkImageCompressor, vtkObject);
31  void PrintSelf(ostream& os, vtkIndent indent) override;
32 
34 
37  void SetInput(vtkUnsignedCharArray* input);
38  vtkGetObjectMacro(Input, vtkUnsignedCharArray);
40 
42 
45  vtkGetObjectMacro(Output, vtkUnsignedCharArray);
46  void SetOutput(vtkUnsignedCharArray*);
48 
50 
54  vtkSetMacro(LossLessMode, int);
55  vtkGetMacro(LossLessMode, int);
57 
62  virtual int Compress() = 0;
63 
68  virtual int Decompress() = 0;
69 
73  virtual void SetImageResolution(int width, int height);
74 
78  virtual void SaveConfiguration(vtkMultiProcessStream* stream);
79 
84  virtual bool RestoreConfiguration(vtkMultiProcessStream* stream);
85 
90  virtual const char* SaveConfiguration();
91 
98  virtual const char* RestoreConfiguration(const char* stream);
99 
100 protected:
102 
106  ~vtkImageCompressor() override;
108 
109  // This is the array which contains the compressed data.
112 
114 
115  vtkSetStringMacro(Configuration);
116  char* Configuration;
117 
118 private:
119  vtkImageCompressor(const vtkImageCompressor&) = delete;
120  void operator=(const vtkImageCompressor&) = delete;
121 };
122 
123 #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 &)