15 #ifndef vtkHDRReader_h
16 #define vtkHDRReader_h
19 #include "vtkIOImageModule.h"
24 VTK_ABI_NAMESPACE_BEGIN
35 FORMAT_32BIT_RLE_RGBE = 0,
43 vtkGetMacro(Format,
int);
51 vtkGetMacro(Gamma,
double);
59 vtkGetMacro(Exposure,
double);
67 vtkGetMacro(PixelAspect,
double);
105 bool FlippedX =
false;
110 bool SwappedAxis =
false;
114 bool HDRReaderUpdateSlice(
float* outPtr,
int* outExt);
122 bool HasError(istream* is);
124 int GetWidth() const;
125 int GetHeight() const;
131 bool ReadHeaderData();
133 void ConvertAllDataFromRGBToXYZ(
float* outPtr,
int size);
135 void FillOutPtrRLE(
int* outExt,
float*& outPtr,
std::
vector<
unsigned char>& lineBuffer);
136 void FillOutPtrNoRLE(
int* outExt,
float*& outPtr,
std::
vector<
unsigned char>& lineBuffer);
141 void RGBE2Float(
unsigned char rgbe[4],
float& r,
float& g,
float& b);
148 static
void XYZ2RGB(const
float convertMatrix[3][3],
double gamma,
float& r,
float& g,
float& b);
158 bool ReadAllFileNoRLE(
vtkResourceStream* stream,
float* outPtr,
int decrPtr,
int* outExt);
167 bool Validated = false;
169 VTK_ABI_NAMESPACE_END
const char * GetDescriptiveName() override
Return a descriptive name for the file format that might be useful in a GUI.
Abstract class used for custom streams.
static vtkImageReader * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_DEPRECATED_IN_9_6_0(reason)
a simple class to control print indentation
Superclass of transformable binary file readers.
topologically and geometrically regular array of data
virtual void ExecuteInformation()
int CanReadFile(const char *) override
vtkImageReader itself can read raw binary files.
void ExecuteDataWithInformation(vtkDataObject *data, vtkInformation *outInfo) override
This is a convenience method that is implemented in many subclasses instead of RequestData.
const char * GetFileExtensions() override
Get the file extensions for this format.
general representation of visualization data