Loading...
Searching...
No Matches
DiInputPixelTemplate< T1, T2 > Class Template Reference

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

Inheritance diagram for DiInputPixelTemplate< T1, T2 >:

## 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
Public Member Functions inherited from DiInputPixel
| DiInputPixel (const unsigned int bits, const unsigned long first, const unsigned long number, const unsigned long fsize)
| constructor
virtual | ~DiInputPixel ()
| destructor
unsigned int | getBits () const
| get number of bits per pixel
double | getAbsMinimum () const
| get absolute minimum pixel value
double | getAbsMaximum () const
| get absolute maximum pixel value
double | getAbsMaxRange () const
| get absolute pixel value range
unsigned long | getCount () const
| get number of pixels stored
unsigned long | getPixelStart () const
| get first pixel to be processed
unsigned long | getPixelCount () const
| get number of pixels to be processed
unsigned long | getComputedCount () const
| get number of pixels computed from the image resolution
Public Member Functions inherited from DiPixelRepresentationTemplate< T2 >
| DiPixelRepresentationTemplate ()
| default constructor
virtual | ~DiPixelRepresentationTemplate ()
| destructor

## 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

## 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)

## Additional Inherited Members

Protected Attributes inherited from DiInputPixel
unsigned long | Count
| number of pixels stored
unsigned int | Bits
| bits per pixel/sample
unsigned long | FirstFrame
| first frame to be processed
unsigned long | NumberOfFrames
| number of frames to be processed
unsigned long | FrameSize
| number of pixels per frame
unsigned long | PixelStart
| first pixel to be processed
unsigned long | PixelCount
| number of pixels to be processed
unsigned long | ComputedCount
| number of pixels computed from the image resolution
double | AbsMinimum
| absolute minimum (possible) pixel value
double | AbsMaximum
| absolute maximum (possible) pixel value

## Detailed Description

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

Template class to convert DICOM pixel stream to intermediate representation.

## Constructor & Destructor Documentation

## DiInputPixelTemplate()

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 high 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)

References DiInputPixel::DiInputPixel(), DiInputPixel::AbsMaximum, DiInputPixel::AbsMinimum, DiInputPixel::Bits, convert(), DiInputPixel::Count, Data, DiDocument::getPixelData(), DicomImageClass::maxval(), MaxValue, MinValue, DiInputPixel::PixelCount, and DiInputPixel::PixelStart.

## Member Function Documentation

## convert()

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 high bit within bits allocated
  fileCache | pointer to file cache object used for partial read
  fragment | current pixel item fragment (for encapsulated pixel data)

References DcmPixelData::canWriteXfer(), CIF_UsePartialAccessToPixelData, DiInputPixel::Count, Data, EC_IllegalCall, OFString::empty(), EXS_LittleEndianExplicit, EXS_Unknown, DiInputPixel::FirstFrame, DiInputPixel::FrameSize, DiInputPixel::getAbsMinimum(), DiDocument::getDataset(), DiDocument::getFlags(), DcmElement::getPartialValue(), DiDocument::getPhotometricInterpretation(), DiDocument::getPixelData(), DcmPixelData::getUncompressedFrame(), OFCondition::good(), DiInputPixel::NumberOfFrames, DiInputPixel::PixelCount, DiInputPixel::PixelStart, and OFCondition::text().

Referenced by DiInputPixelTemplate().

## determineMinMax()

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.

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

## getData()

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.

References Data.

## getDataPtr()

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.

References Data.

## getMaxValue()

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.

References MaxValue.

## getMinValue()

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.

References MinValue.

## getRepresentation()

template<class T1, class T2>

EP_Representation DiInputPixelTemplate< T1, T2 >::getRepresentation | ( |  | ) | const

inline virtual

get pixel representation

Returns
  pixel representation

Implements DiInputPixel.

References DiPixelRepresentationTemplate< T >::getRepresentation().

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

- dcmimgle/include/dcmtk/dcmimgle/diinpxt.h

Generated on for DCMTK Version 3.7.0 by Doxygen 1.15.0