14 #ifndef vtkHDRReader_h
15 #define vtkHDRReader_h
17 #include "vtkIOImageModule.h"
22 VTK_ABI_NAMESPACE_BEGIN
33 FORMAT_32BIT_RLE_RGBE = 0,
41 vtkGetMacro(Format,
int);
49 vtkGetMacro(Gamma,
double);
57 vtkGetMacro(Exposure,
double);
65 vtkGetMacro(PixelAspect,
double);
98 bool FlippedX =
false;
103 bool SwappedAxis =
false;
107 bool HDRReaderUpdateSlice(
float* outPtr,
int* outExt);
114 bool HasError(istream* is);
116 int GetWidth()
const;
117 int GetHeight()
const;
123 bool ReadHeaderData();
125 void ConvertAllDataFromRGBToXYZ(
float* outPtr,
int size);
127 void FillOutPtrRLE(
int* outExt,
float*& outPtr, std::vector<unsigned char>& lineBuffer);
128 void FillOutPtrNoRLE(
int* outExt,
float*& outPtr, std::vector<unsigned char>& lineBuffer);
134 bool ReadAllFileNoRLE(istream* is,
float* outPtr,
int decrPtr,
int* outExt);
140 bool ReadLineRLE(istream* is,
unsigned char* lineBufferPtr);
145 void RGBE2Float(
unsigned char rgbe[4],
float& r,
float& g,
float& b);
152 static void XYZ2RGB(
const float convertMatrix[3][3],
float& r,
float& g,
float& b);
158 VTK_ABI_NAMESPACE_END
const char * GetDescriptiveName() override
Return a descriptive name for the file format that might be useful in a GUI.
static vtkImageReader * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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(VTK_FILEPATH 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