DCMTK
Version 3.6.3
OFFIS DICOM Toolkit
|
Template class to create monochrome output data. More...
Public Member Functions | |
DiMonoOutputPixelTemplate (void *buffer, const DiMonoPixel *pixel, DiOverlay *overlays[2], const DiLookupTable *vlut, const DiLookupTable *plut, DiDisplayFunction *disp, const EF_VoiLutFunction vfunc, const double center, const double width, const Uint32 low, const Uint32 high, const Uint16 columns, const Uint16 rows, const unsigned long frame, const unsigned long, const int pastel=0) | |
constructor More... | |
virtual | ~DiMonoOutputPixelTemplate () |
destructor | |
EP_Representation | getRepresentation () const |
get integer representation of output data More... | |
size_t | getItemSize () const |
get size of one pixel / item in the pixel array More... | |
const void * | getData () const |
get pointer to output pixel data More... | |
virtual void * | getDataPtr () |
get pointer to output pixel data More... | |
void | removeDataReference () |
remove reference to (internally handled) pixel data (abstract) | |
int | writePPM (STD_NAMESPACE ostream &stream) const |
write pixel data of selected frame to PPM/ASCII file More... | |
int | writePPM (FILE *stream) const |
write pixel data of selected frame to PPM/ASCII file More... | |
![]() | |
DiMonoOutputPixel (const DiMonoPixel *pixel, const unsigned long size, const unsigned long frame, const unsigned long max) | |
constructor More... | |
virtual | ~DiMonoOutputPixel () |
destructor | |
unsigned long | getCount () const |
get number of pixel per frame More... | |
int | isUnused (const unsigned long value) |
check whether specified pixel value is used in the image. More... | |
![]() | |
DiPixelRepresentationTemplate () | |
default constructor | |
virtual | ~DiPixelRepresentationTemplate () |
destructor | |
int | isSigned () const |
check whether template type T is signed or not More... | |
Protected Member Functions | |
void | determineUsedValues () |
examine which pixel values are actually used | |
unsigned long | determineOptimizationCount (const double count) |
determine number of entries for the optimization LUT More... | |
Private Member Functions | |
void | createDisplayLUT (const DiDisplayLUT *&dlut, DiDisplayFunction *disp, const int bits) |
create a display LUT with the specified number of input bits More... | |
int | initOptimizationLUT (T3 *&lut, const unsigned long ocnt) |
initialize an optimization LUT if the optimization criteria is fulfilled More... | |
void | voilut (const DiMonoPixel *inter, const Uint32 start, const DiLookupTable *vlut, const DiLookupTable *plut, DiDisplayFunction *disp, const T3 low, const T3 high) |
apply the currently active VOI LUT to the output data More... | |
void | nowindow (const DiMonoPixel *inter, const Uint32 start, const DiLookupTable *plut, DiDisplayFunction *disp, const T3 low, const T3 high) |
perform linear scaling to the output data (no windowing) More... | |
void | sigmoid (const DiMonoPixel *inter, const Uint32 start, const DiLookupTable *plut, DiDisplayFunction *disp, const double center, const double width, const T3 low, const T3 high) |
apply the currently active sigmoid VOI window to the output data More... | |
void | window (const DiMonoPixel *inter, const Uint32 start, const DiLookupTable *plut, DiDisplayFunction *disp, const double center, const double width, const T3 low, const T3 high) |
apply the currently active linear VOI window to the output data More... | |
void | overlay (DiOverlay *overlays[2], DiDisplayFunction *disp, const Uint16 columns, const Uint16 rows, const unsigned long frame) |
apply the currently active overlay planes to the output data More... | |
Private Attributes | |
T3 * | Data |
pointer to the storage area where the output data should be stored | |
int | DeleteData |
flag indicating whether the output data buffer should be deleted in the destructor | |
Additional Inherited Members | |
![]() | |
unsigned long | Count |
number of pixels per frame (intermediate representation) | |
const unsigned long | FrameSize |
number of pixels per frame (memory buffer size) | |
Uint8 * | UsedValues |
array of used pixel values | |
const unsigned long | MaxValue |
maximum output value | |
Template class to create monochrome output data.
|
inline |
constructor
buffer | storage area for the output pixel data (optional, maybe NULL) |
pixel | pointer to intermediate pixel representation |
overlays | array of overlay management objects |
vlut | VOI LUT (optional, maybe NULL) |
plut | presentation LUT (optional, maybe NULL) |
disp | display function (optional, maybe NULL) |
vfunc | VOI LUT function (optional) |
center | window center (optional, invalid if 'width' < 1) |
width | window width (optional, invalid if < 1) |
low | lowest pixel value for the output data (e.g. 0) |
high | highest pixel value for the output data (e.g. 255) |
columns | image's width (in pixels) |
rows | image's height |
frame | frame to be rendered (#)param frames total number of frames present in intermediate representation |
pastel | flag indicating whether to use not only 'real' grayscale values (optional, experimental) |
|
inlineprivate |
create a display LUT with the specified number of input bits
dlut | reference to storage area where the display LUT should be stored |
disp | pointer to object describing the current display function |
bits | number of bits defining the input width of the display LUT |
References DiDisplayFunction::getLookupTable(), DiDisplayFunction::isValid(), and DiBaseLUT::isValid().
|
inlineprotected |
determine number of entries for the optimization LUT
count | number of entries intended to be used for the optimization LUT (floating point value) |
|
inlinevirtual |
get pointer to output pixel data
Implements DiMonoOutputPixel.
References DiMonoOutputPixel::getData().
|
inlinevirtual |
get pointer to output pixel data
Implements DiMonoOutputPixel.
References DiMonoOutputPixel::getDataPtr().
|
inlinevirtual |
get size of one pixel / item in the pixel array
Implements DiMonoOutputPixel.
References DiMonoOutputPixel::getItemSize().
|
inlinevirtual |
get integer representation of output data
Implements DiMonoOutputPixel.
References DiPixelRepresentationTemplate< T >::getRepresentation().
|
inlineprivate |
initialize an optimization LUT if the optimization criteria is fulfilled
lut | reference to storage area where the optimization LUT should be stored |
ocnt | number of entries for the optimization LUT (0 = never create one) |
References DiMonoOutputPixel::Count.
|
inlineprivate |
perform linear scaling to the output data (no windowing)
inter | pointer to intermediate pixel representation |
start | offset of the first pixel to be processed |
plut | presentation LUT (optional, maybe NULL) |
disp | display function (optional, maybe NULL) |
low | lowest pixel value for the output data (e.g. 0) |
high | highest pixel value for the output data (e.g. 255) |
|
inlineprivate |
apply the currently active overlay planes to the output data
overlays | array of overlay management objects |
disp | display function (optional, maybe NULL) |
columns | image's width (in pixels) |
rows | image's height (in pixels) |
frame | number of frame to be rendered |
References DiMonoOutputPixelTemplate< T1, T2, T3 >::Data, and DiMonoOutputPixel::getCount().
|
inlineprivate |
apply the currently active sigmoid VOI window to the output data
inter | pointer to intermediate pixel representation |
start | offset of the first pixel to be processed |
plut | presentation LUT (optional, maybe NULL) |
disp | display function (optional, maybe NULL) |
center | window center |
width | window width (>= 1) |
low | lowest pixel value for the output data (e.g. 0) |
high | highest pixel value for the output data (e.g. 255) |
|
inlineprivate |
apply the currently active VOI LUT to the output data
inter | pointer to intermediate pixel representation |
start | offset of the first pixel to be processed |
vlut | VOI LUT |
plut | presentation LUT (optional, maybe NULL) |
disp | display function (optional, maybe NULL) |
low | lowest pixel value for the output data (e.g. 0) |
high | highest pixel value for the output data (e.g. 255) |
|
inlineprivate |
apply the currently active linear VOI window to the output data
inter | pointer to intermediate pixel representation |
start | offset of the first pixel to be processed |
plut | presentation LUT (optional, maybe NULL) |
disp | display function (optional, maybe NULL) |
center | window center |
width | window width (>= 1) |
low | lowest pixel value for the output data (e.g. 0) |
high | highest pixel value for the output data (e.g. 255) |
|
inlinevirtual |
write pixel data of selected frame to PPM/ASCII file
stream | open C++ output stream |
Implements DiMonoOutputPixel.
References DiMonoOutputPixelTemplate< T1, T2, T3 >::Data, and DiMonoOutputPixel::FrameSize.
|
inlinevirtual |
write pixel data of selected frame to PPM/ASCII file
stream | open C file stream |
Implements DiMonoOutputPixel.
References DiMonoOutputPixelTemplate< T1, T2, T3 >::Data, and DiMonoOutputPixel::FrameSize.