Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members | Related Pages

vlVolInfo Class Reference

This class is a storage for all possible information about a volume. More...

#include <vlvolinfo.h>

List of all members.

Public Member Functions

 vlVolInfo ()
 Default constructor.

virtual ~vlVolInfo ()
 Default destructor.

bool isValid () const
 Returns true if the data is enuff to define a volume.

vlDim dim () const
vlDim origFileDim () const
vlStep stepping () const
vlUnit units () const
vlPoint3ui origFilePos () const
uint16 bitsPerVoxel () const
 Bits per voxel - this field will always accuratly give the bits per voxel.

uint16 bytesPerVoxel () const
 Bytes per voxel - set to zero if u want to use bitsPerVoxel instead (for voxels without multiples of 8 bits per voxel).

uint16 memSize () const
vlDataType dataType () const
vlLayoutType dataLayout () const
vlLayoutType nonInterleaved () const
uint32 headerSize () const
const vlVarListextraInfo () const
 Const pointer to the storage of extra information regarding the volume.

vlVarListextraInfoRW ()
 Writable, non-const Pointer to the storage of extra information.

void setOrigFilePos (const vlPoint3ui &position)
void setDim (const vlDim &dim)
void setOrigFileDim (const vlDim &dim)
void setStepping (const vlStep &step)
void setUnits (const vlUnit &units)
void setBitsPerVoxel (const uint16 bitsPerVoxel)
void setBytesPerVoxel (const uint16 bytesPerVoxel)
void setDataType (const vlDataType type)
void setDataLayout (const vlLayoutType type)
void setNonInterleaved (const bool ni)
void setHeaderSize (const uint32 size)
void setExtraInfo (const vlVarList *extraInfo)

Protected Attributes

vlDim m_dim
 Volume dimensions.

vlDim m_origFileDim
 Volume dimensions.

vlStep m_step
 Volume stepping in each dimension.

vlUnit m_units
 Length along each unit.

unsigned short m_bitsPerVoxel
unsigned short m_bytesPerVoxel
vlDataType m_dataType
 Data type.

vlLayoutType m_layout
 Layout of the volume data.

bool m_noninterleavedRGB
 Input data is noninterleaved RGB data.

unsigned long m_headerSize
 Size of the file header in bytes.

vlPoint3ui m_position
 Volume start position.

vlVarListAdmin m_extraInfo
 Storage for extra information.


Friends

std::ostream & operator<< (std::ostream &os, vlVolInfo const &info)
 overriding << to enable writing vol info to a stream


Detailed Description

Objects of this class will be passed around to open/save a volume. This class helps us to do things like filling up missing information for a volume by means of for eg. a user interface and then opening/saving the file with that info.

Author:
Sarang Lakare <sarang@users.sf.net>

Definition at line 52 of file vlvolinfo.h.


Constructor & Destructor Documentation

vlVolInfo::vlVolInfo  ) 
 

Definition at line 29 of file vlvolinfo.cpp.

References vlVarListAdmin::add(), m_bitsPerVoxel, m_bytesPerVoxel, m_dataType, m_extraInfo, m_noninterleavedRGB, m_position, UnsignedInt8, and vlPoint3ui.

vlVolInfo::~vlVolInfo  )  [virtual]
 

Definition at line 44 of file vlvolinfo.cpp.

References vlVarListAdmin::clear(), and m_extraInfo.


Member Function Documentation

uint16 vlVolInfo::bitsPerVoxel  )  const [inline]
 

Set bytesPerVoxel to 0 incase voxel size is not on the byte boundary. i.e whenever bytesPerVoxel = 0, refer to bits per voxel for the exact voxel size.

Definition at line 80 of file vlvolinfo.h.

References m_bitsPerVoxel, and uint16.

Referenced by vlVolFioSLC::readData(), vlVolFioVOX::writeInfo(), vlVolFioSLC::writeInfo(), vlVolFioRAW::writeInfo(), vlVolFioPGMVol::writeInfo(), and vlVolFiof3d::writeInfo().

uint16 vlVolInfo::bytesPerVoxel  )  const [inline]
 

Definition at line 86 of file vlvolinfo.h.

References m_bytesPerVoxel, and uint16.

Referenced by vlVolume::readImages(), vlVolFioSLC::readInfo(), vlVolFioRAW::readInfo(), vlVolFioSLC::writeData(), and vlVolFioRAW::writeInfo().

vlLayoutType vlVolInfo::dataLayout  )  const [inline]
 

Definition at line 92 of file vlvolinfo.h.

References m_layout, and vlLayoutType.

vlDataType vlVolInfo::dataType  )  const [inline]
 

Definition at line 90 of file vlvolinfo.h.

References m_dataType, and vlDataType.

Referenced by vlVolume::read(), vlVolFioSLC::readData(), vlVolFioPPM::readData(), vlVolFioPGMVol::readData(), vlVolFiof3d::readData(), vlVolFioDEN::readData(), vlVolume::readImages(), vlVolume::readSubvolumes(), vlVolFioDEN::writeData(), vlVolFioVOX::writeInfo(), vlVolFioRAW::writeInfo(), and vlVolFioDEN::writeInfo().

vlDim vlVolInfo::dim  )  const [inline]
 

Definition at line 64 of file vlvolinfo.h.

References m_dim.

Referenced by CreateVolume(), main(), vlVolume::read(), vlVolFioVOX::readData(), vlVolFioSLC::readData(), vlVolFioPPM::readData(), vlVolFioRAW::readData(), vlVolFioPGMVol::readData(), vlVolFiof3d::readData(), vlVolFioDEN::readData(), vlVolFioPGMVol::readDataT(), vlVolFiof3d::readDataT(), vlVolume::readImages(), vlVolume::readInfo(), vlVolFioSLC::readInfo(), vlVolFioRAW::readInfo(), vlVolFioPGMVol::readInfo(), vlVolFiof3d::readInfo(), vlVolFioDEN::readInfo(), vlVolume::readSubvolumes(), vlVolFioSLC::writeData(), vlVolFioPPM::writeData(), vlVolFioVOX::writeInfo(), vlVolFioSLC::writeInfo(), vlVolFioPPM::writeInfo(), vlVolFioRAW::writeInfo(), vlVolFioPGMVol::writeInfo(), vlVolFiof3d::writeInfo(), and vlVolFioDEN::writeInfo().

const vlVarList* vlVolInfo::extraInfo  )  const [inline]
 

Definition at line 99 of file vlvolinfo.h.

References m_extraInfo.

Referenced by main(), vlVolume::read(), vlVolFioSLC::readData(), and vlVolFioSLC::readInfo().

vlVarList* vlVolInfo::extraInfoRW  )  [inline]
 

Definition at line 102 of file vlvolinfo.h.

References m_extraInfo.

Referenced by vlVolume::readInfo(), and vlVolFioSLC::readInfo().

uint32 vlVolInfo::headerSize  )  const [inline]
 

Definition at line 96 of file vlvolinfo.h.

References m_headerSize, and uint32.

Referenced by vlVolFioVOX::readData(), vlVolFioSLC::readData(), vlVolFioPPM::readData(), and vlVolFiof3d::readData().

bool vlVolInfo::isValid  )  const
 

Definition at line 49 of file vlvolinfo.cpp.

References m_dim, vlTriple< uint16 >::x(), vlTriple< uint16 >::y(), and vlTriple< uint16 >::z().

Referenced by vlVolume::read(), vlVolFioVOX::readData(), vlVolFioSLC::readData(), vlVolFioPPM::readData(), vlVolFioRAW::readData(), vlVolFioPGMVol::readData(), vlVolFiof3d::readData(), vlVolFioDEN::readData(), vlVolume::readImages(), and vlVolume::readSubvolumes().

uint16 vlVolInfo::memSize  )  const [inline]
 

Definition at line 88 of file vlvolinfo.h.

References m_bytesPerVoxel, m_dim, uint16, vlTriple< uint16 >::x(), vlTriple< uint16 >::y(), and vlTriple< uint16 >::z().

vlLayoutType vlVolInfo::nonInterleaved  )  const [inline]
 

Definition at line 94 of file vlvolinfo.h.

References m_noninterleavedRGB, and vlLayoutType.

Referenced by vlVolFioRAW::writeInfo().

vlDim vlVolInfo::origFileDim  )  const [inline]
 

Definition at line 66 of file vlvolinfo.h.

References m_origFileDim.

Referenced by vlVolume::readSubvolumes(), and vlVolFioVOX::writeInfo().

vlPoint3ui vlVolInfo::origFilePos  )  const [inline]
 

Definition at line 72 of file vlvolinfo.h.

References m_position.

Referenced by vlVolume::readImages(), vlVolume::readSubvolumes(), vlVolume::write(), vlVolFioVOX::writeInfo(), and vlVolFioRAW::writeInfo().

void vlVolInfo::setBitsPerVoxel const uint16  bitsPerVoxel  )  [inline]
 

Definition at line 114 of file vlvolinfo.h.

References m_bitsPerVoxel.

Referenced by vlVolume::getVolInfo(), vlVolFioVOX::readInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), vlVolFioRAW::readInfo(), and vlVolFioDEN::readInfo().

void vlVolInfo::setBytesPerVoxel const uint16  bytesPerVoxel  )  [inline]
 

Definition at line 116 of file vlvolinfo.h.

References m_bytesPerVoxel.

Referenced by CreateVolume(), vlVolume::getVolInfo(), vlVolFioVOX::readInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), vlVolFioRAW::readInfo(), and vlVolFioDEN::readInfo().

void vlVolInfo::setDataLayout const vlLayoutType  type  )  [inline]
 

Definition at line 120 of file vlvolinfo.h.

References m_layout.

void vlVolInfo::setDataType const vlDataType  type  )  [inline]
 

Definition at line 118 of file vlvolinfo.h.

References m_dataType.

Referenced by CreateVolume(), vlVolume::getVolInfo(), vlVolFioVOX::readInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), vlVolFioRAW::readInfo(), vlVolFioPGMVol::readInfo(), vlVolFiof3d::readInfo(), vlVolFioDEN::readInfo(), and vlVolume::readSubvolumes().

void vlVolInfo::setDim const vlDim dim  )  [inline]
 

Definition at line 106 of file vlvolinfo.h.

References m_dim.

Referenced by CreateVolume(), vlVolume::getVolInfo(), vlVolFioVOX::readInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), vlVolFioRAW::readInfo(), vlVolFioPGMVol::readInfo(), vlVolFiof3d::readInfo(), and vlVolFioDEN::readInfo().

void vlVolInfo::setExtraInfo const vlVarList extraInfo  )  [inline]
 

Definition at line 126 of file vlvolinfo.h.

References vlVarListAdmin::clear(), and m_extraInfo.

Referenced by vlVolume::getVolInfo().

void vlVolInfo::setHeaderSize const uint32  size  )  [inline]
 

Definition at line 124 of file vlvolinfo.h.

References m_headerSize.

Referenced by vlVolFioVOX::readInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), vlVolFiof3d::readInfo(), and vlVolFioDEN::readInfo().

void vlVolInfo::setNonInterleaved const bool  ni  )  [inline]
 

Definition at line 122 of file vlvolinfo.h.

References m_noninterleavedRGB.

Referenced by CreateVolume(), and vlVolFioRAW::readInfo().

void vlVolInfo::setOrigFileDim const vlDim dim  )  [inline]
 

Definition at line 108 of file vlvolinfo.h.

References m_origFileDim.

Referenced by vlVolume::getVolInfo().

void vlVolInfo::setOrigFilePos const vlPoint3ui position  )  [inline]
 

Definition at line 104 of file vlvolinfo.h.

References m_position.

Referenced by CreateVolume(), vlVolume::getVolInfo(), vlVolFioVOX::readInfo(), and vlVolFioRAW::readInfo().

void vlVolInfo::setStepping const vlStep step  )  [inline]
 

Definition at line 110 of file vlvolinfo.h.

References m_step.

Referenced by CreateVolume(), vlVolume::getVolInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), and vlVolFioDEN::readInfo().

void vlVolInfo::setUnits const vlUnit units  )  [inline]
 

Definition at line 112 of file vlvolinfo.h.

References m_units.

Referenced by CreateVolume(), vlVolume::getVolInfo(), vlVolFioVOX::readInfo(), vlVolFioSLC::readInfo(), vlVolFioPPM::readInfo(), vlVolFiof3d::readInfo(), and vlVolFioDEN::readInfo().

vlStep vlVolInfo::stepping  )  const [inline]
 

Definition at line 68 of file vlvolinfo.h.

References m_step.

Referenced by vlVolFioSLC::readData(), and vlVolFioPPM::readData().

vlUnit vlVolInfo::units  )  const [inline]
 

Definition at line 70 of file vlvolinfo.h.

References m_units.

Referenced by vlVolume::read(), vlVolume::readImages(), vlVolFiof3d::readInfo(), vlVolume::readSubvolumes(), vlVolFioVOX::writeInfo(), and vlVolFioSLC::writeInfo().


Friends And Related Function Documentation

std::ostream& operator<< std::ostream &  os,
vlVolInfo const &  info
[friend]
 

Definition at line 132 of file vlvolinfo.h.


Member Data Documentation

unsigned short vlVolInfo::m_bitsPerVoxel [protected]
 

Definition at line 150 of file vlvolinfo.h.

Referenced by bitsPerVoxel(), setBitsPerVoxel(), and vlVolInfo().

unsigned short vlVolInfo::m_bytesPerVoxel [protected]
 

Definition at line 152 of file vlvolinfo.h.

Referenced by bytesPerVoxel(), memSize(), setBytesPerVoxel(), and vlVolInfo().

vlDataType vlVolInfo::m_dataType [protected]
 

Definition at line 155 of file vlvolinfo.h.

Referenced by dataType(), setDataType(), and vlVolInfo().

vlDim vlVolInfo::m_dim [protected]
 

Definition at line 139 of file vlvolinfo.h.

Referenced by dim(), isValid(), memSize(), and setDim().

vlVarListAdmin vlVolInfo::m_extraInfo [protected]
 

Definition at line 170 of file vlvolinfo.h.

Referenced by extraInfo(), extraInfoRW(), setExtraInfo(), vlVolInfo(), and ~vlVolInfo().

unsigned long vlVolInfo::m_headerSize [protected]
 

Definition at line 164 of file vlvolinfo.h.

Referenced by headerSize(), and setHeaderSize().

vlLayoutType vlVolInfo::m_layout [protected]
 

Definition at line 158 of file vlvolinfo.h.

Referenced by dataLayout(), and setDataLayout().

bool vlVolInfo::m_noninterleavedRGB [protected]
 

Definition at line 161 of file vlvolinfo.h.

Referenced by nonInterleaved(), setNonInterleaved(), and vlVolInfo().

vlDim vlVolInfo::m_origFileDim [protected]
 

Definition at line 142 of file vlvolinfo.h.

Referenced by origFileDim(), and setOrigFileDim().

vlPoint3ui vlVolInfo::m_position [protected]
 

Definition at line 167 of file vlvolinfo.h.

Referenced by origFilePos(), setOrigFilePos(), and vlVolInfo().

vlStep vlVolInfo::m_step [protected]
 

Definition at line 145 of file vlvolinfo.h.

Referenced by setStepping(), and stepping().

vlUnit vlVolInfo::m_units [protected]
 

Definition at line 148 of file vlvolinfo.h.

Referenced by setUnits(), and units().


The documentation for this class was generated from the following files:
Generated on Fri Mar 18 11:33:21 2005 for OpenVL by doxygen 1.3.3