DiInputPixelTemplate< T1, T2 > Class Template Reference

Template class to convert DICOM pixel stream to intermediate representation. More...

Inheritance diagram for DiInputPixelTemplate< T1, T2 >:

DiInputPixel DiPixelRepresentationTemplate< T2 > List of all members.

Public Member Functions

 DiInputPixelTemplate (const DiDocument *document, const Uint16 alloc, const Uint16 stored, const Uint16 high, const unsigned long first, const unsigned long number, const unsigned long fsize, DcmFileCache *fileCache, Uint32 &fragment)
 constructor
virtual ~DiInputPixelTemplate ()
 destructor
int determineMinMax ()
 determine minimum and maximum pixel value
EP_Representation getRepresentation () const
 get pixel representation
const void * getData () const
 get pointer to input pixel data
virtual void * getDataPtr ()
 get reference to pointer to input pixel data
void removeDataReference ()
 remove reference to (internally handled) pixel data
double getMinValue (const int idx) const
 get minimum pixel value
double getMaxValue (const int idx) const
 get maximum pixel value

Private Member Functions

void convert (const DiDocument *document, const Uint16 bitsAllocated, const Uint16 bitsStored, const Uint16 highBit, DcmFileCache *fileCache, Uint32 &fragment)
 convert pixel data from DICOM dataset to input representation
 DiInputPixelTemplate (const DiInputPixelTemplate< T1, T2 > &)
DiInputPixelTemplate< T1,
T2 > & 
operator= (const DiInputPixelTemplate< T1, T2 > &)

Private Attributes

T2 * Data
 pointer to pixel data
T2 MinValue [2]
 minimum pixel value ([0] = global, [1] = selected pixel range)
T2 MaxValue [2]
 maximum pixel value ([0] = global, [1] = selected pixel range)

Detailed Description

template<class T1, class T2>
class DiInputPixelTemplate< T1, T2 >

Template class to convert DICOM pixel stream to intermediate representation.

Definition at line 119 of file diinpxt.h.


Constructor & Destructor Documentation

template<class T1, class T2>
DiInputPixelTemplate< T1, T2 >::DiInputPixelTemplate ( const DiDocument document,
const Uint16  alloc,
const Uint16  stored,
const Uint16  high,
const unsigned long  first,
const unsigned long  number,
const unsigned long  fsize,
DcmFileCache fileCache,
Uint32 &  fragment 
) [inline]

constructor

Parameters:
document pointer to DICOM image object
alloc number of bits allocated for each pixel
stored number of bits stored for each pixel
high position of bigh bit within bits allocated
first first frame to be processed
number number of frames to be processed
fsize number of pixels per frame (frame size)
fileCache pointer to file cache object used for partial read
fragment current pixel item fragment (for encapsulated pixel data)

Definition at line 138 of file diinpxt.h.

References DiInputPixel::AbsMaximum, DiInputPixel::AbsMinimum, DiInputPixel::Bits, DiInputPixelTemplate< T1, T2 >::convert(), DiInputPixel::Count, DiDocument::getPixelData(), DicomImageClass::maxval(), DiInputPixelTemplate< T1, T2 >::MaxValue, DiInputPixelTemplate< T1, T2 >::MinValue, DiInputPixel::PixelCount, and DiInputPixel::PixelStart.


Member Function Documentation

template<class T1, class T2>
int DiInputPixelTemplate< T1, T2 >::determineMinMax (  )  [inline, virtual]

determine minimum and maximum pixel value

Returns:
status, true if successful, false otherwise

Implements DiInputPixel.

Definition at line 182 of file diinpxt.h.

References DiInputPixel::Count, DiInputPixelTemplate< T1, T2 >::Data, DiInputPixel::getAbsMaxRange(), DiInputPixel::getAbsMinimum(), DiInputPixelTemplate< T1, T2 >::MaxValue, DiInputPixelTemplate< T1, T2 >::MinValue, DiInputPixel::PixelCount, DiInputPixel::PixelStart, and OFBitmanipTemplate< T >::zeroMem().

template<class T1, class T2>
EP_Representation DiInputPixelTemplate< T1, T2 >::getRepresentation (  )  const [inline, virtual]

get pixel representation

Returns:
pixel representation

Implements DiInputPixel.

Definition at line 292 of file diinpxt.h.

References DiPixelRepresentationTemplate< T >::getRepresentation().

template<class T1, class T2>
const void* DiInputPixelTemplate< T1, T2 >::getData (  )  const [inline, virtual]

get pointer to input pixel data

Returns:
pointer to input pixel data

Implements DiInputPixel.

Definition at line 301 of file diinpxt.h.

References DiInputPixelTemplate< T1, T2 >::Data.

template<class T1, class T2>
virtual void* DiInputPixelTemplate< T1, T2 >::getDataPtr (  )  [inline, virtual]

get reference to pointer to input pixel data

Returns:
reference to pointer to input pixel data

Implements DiInputPixel.

Definition at line 310 of file diinpxt.h.

References DiInputPixelTemplate< T1, T2 >::Data.

template<class T1, class T2>
double DiInputPixelTemplate< T1, T2 >::getMinValue ( const int  idx  )  const [inline, virtual]

get minimum pixel value

Parameters:
idx specifies whether to return the global minimum (0) or the minimum of the selected pixel range (1, see PixelStart/Range)
Returns:
minimum pixel value

Implements DiInputPixel.

Definition at line 329 of file diinpxt.h.

References DiInputPixelTemplate< T1, T2 >::MinValue.

template<class T1, class T2>
double DiInputPixelTemplate< T1, T2 >::getMaxValue ( const int  idx  )  const [inline, virtual]

get maximum pixel value

Parameters:
idx specifies whether to return the global maximum (0) or the maximum of the selected pixel range (1, see PixelStart/Range)
Returns:
maximum pixel value

Implements DiInputPixel.

Definition at line 341 of file diinpxt.h.

References DiInputPixelTemplate< T1, T2 >::MaxValue.

template<class T1, class T2>
void DiInputPixelTemplate< T1, T2 >::convert ( const DiDocument document,
const Uint16  bitsAllocated,
const Uint16  bitsStored,
const Uint16  highBit,
DcmFileCache fileCache,
Uint32 &  fragment 
) [inline, private]

convert pixel data from DICOM dataset to input representation

Parameters:
document pointer to DICOM image object
bitsAllocated number of bits allocated for each pixel
bitsStored number of bits stored for each pixel
highBit position of bigh bit within bits allocated
fileCache pointer to file cache object used for partial read
fragment current pixel item fragment (for encapsulated pixel data)

Definition at line 358 of file diinpxt.h.

References DcmPixelData::canWriteXfer(), DiInputPixel::Count, DiInputPixelTemplate< T1, T2 >::Data, OFString::empty(), DiInputPixel::FirstFrame, DiInputPixel::FrameSize, DiDocument::getDataset(), DiDocument::getFlags(), DcmElement::getPartialValue(), DiDocument::getPhotometricInterpretation(), DiDocument::getPixelData(), DcmPixelData::getUncompressedFrame(), OFCondition::good(), DiInputPixel::NumberOfFrames, DiInputPixel::PixelCount, DiInputPixel::PixelStart, OFCondition::text(), and DcmElement::valueLoaded().

Referenced by DiInputPixelTemplate< T1, T2 >::DiInputPixelTemplate().


The documentation for this class was generated from the following file:


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1