23#ifndef _SO_VR_RASTER_STACK_READER_
24#define _SO_VR_RASTER_STACK_READER_
27#pragma warning( push )
28#pragma warning(disable:4251)
37#include <Inventor/STL/vector>
38#include <Inventor/STL/string>
225 int extractFileList(
const SbString& headFile);
226 SbBool extractParameters(
const char* lineStr);
230 void RGBA2HLS(
SbVec3f& hls,
float* rgba);
232 float convertFloat(
float value);
233 short convertShort(
short value);
234 int32_t convertInt32(int32_t value);
235 unsigned short convertUShort(
unsigned short value);
236 uint32_t convertUInt32(uint32_t value);
237 SbBool needEndianConversion();
239 int getChannelId(
const char* channel);
241 template <
typename T>
242 void getSubSliceInternal(
const SbBox2i32 &subSlice,
int sliceNumber,
void* data);
244 template <
typename TSRC,
typename T>
245 void convertSubSliceInternal(TSRC* srcData,
const SbVec2i32 srcSize,
const unsigned int srcNumComponent, std::vector<T>& dstVector);
256 template <
typename T>
257 void getSingleChannelData(std::vector<T> srcVector,
SbVec2i32& size2s,
258 unsigned int xMin,
unsigned int xMax,
259 unsigned int yMin,
unsigned int yMax,
262 template <
typename T>
263 T endianConverter(
const T value);
273 std::vector< SbString > m_fileList;
274 unsigned int m_rawHeaderSize;
280 bool m_isInitialized;
286 template <
typename T>
291#pragma warning( pop )
#define SO_FIELDCONTAINER_HEADER(className)
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> Class encapsulat...
Components
Components type.
Class for smart character strings.
Maintains a list of pointers to SbString instances.
DataType
Supported data type.
<a href="IconLegend.html"><img src="extVR.gif" alt="VolumeViz" border="0"></a> Raster stack reader.
virtual ReadError getDataChar(SbBox3f &size, SoDataSet::DataType &type, SbVec3i32 &dim) override
Gets the characteristics (file header) of the data volume.
SbBool setDirectory(const SbString &directory)
Specify a directory containing image files to load (jpg, png, tif,...).
SbBool setFilenameList(const SbStringList &filenameList)
Specify a list of files to load.
virtual SbBool isRGBA() const
Returns TRUE if the data set contains RGBA color values.
virtual SoVolumeReader::ReaderType getReaderType()
Returns the reader type.
SoVRRasterStackReader()
Constructor.
void setSize(SbBox3f &size)
Defines the bounding box size in physical units of the data set.
void setChannelSelection(ChannelSelection cs)
Selects channels to be used for data rendering.
virtual SbBool isThreadSafe() const
Return true as this reader is thread safe.
virtual int setFilename(const SbString &filename)
Specifies the path of the descriptive (.lst) file.
ChannelSelection
Channel selection.
@ RED_CHANNEL
Red channel.
@ GREEN_CHANNEL
Green channel.
@ BLUE_CHANNEL
Blue channel.
@ ALPHA_CHANNEL
Alpha channel.
@ MAX_CHANNEL
Maximum of all channels.
@ ALL_CHANNELS
All channels combined.
virtual void getSubSlice(const SbBox2i32 &subSlice, int sliceNumber, void *data)
Must copy the rectangular part defined by subSlice of the XY slice sliceNumber to the memory refe...
<a href="IconLegend.html"><img src="extLDM.gif" alt="Large Data Management" border="0"></a> Abstract...
ReaderType
Available reader type.
@ RASTERSTACK
Raster Stack.