Public Member Functions | |
| DicomImage (const char *filename, const unsigned long flags=0, const unsigned long fstart=0, const unsigned long fcount=0) | |
| constructor, open a DICOM file. | |
| DicomImage (DcmObject *object, const E_TransferSyntax xfer, const unsigned long flags=0, const unsigned long fstart=0, const unsigned long fcount=0) | |
| constructor, use a given DcmObject | |
| DicomImage (DcmObject *object, const E_TransferSyntax xfer, const double slope, const double intercept, const unsigned long flags=0, const unsigned long fstart=0, const unsigned long fcount=0) | |
| constructor, use a given DcmObject with specified rescale/slope. | |
| DicomImage (DcmObject *object, E_TransferSyntax xfer, const DcmUnsignedShort &data, const DcmUnsignedShort &descriptor, const DcmLongString *explanation=NULL, const unsigned long flags=0, const unsigned long fstart=0, const unsigned long fcount=0) | |
| constructor, use a given DcmObject with specified modality LUT. | |
| virtual | ~DicomImage () |
| destructor | |
| EI_Status | getStatus () const |
| get current status information | |
| unsigned long | getFrameCount () const |
| get number of frames. | |
| unsigned long | getFirstFrame () const |
| get index of first frame. | |
| unsigned long | getRepresentativeFrame () const |
| get index of representative frame. | |
| unsigned long | getWidth () const |
| get image width in pixels | |
| unsigned long | getHeight () const |
| get image height in pixels | |
| int | getDepth () const |
| get image depth | |
| int | getMinMaxValues (double &min, double &max, const int mode=0) const |
| get minimum and maximum pixel values. | |
| double | getWidthHeightRatio () const |
| get width height ratio (pixel aspect ratio: x/y) | |
| double | getHeightWidthRatio () const |
| get height width ratio (pixel aspect ratio: y/x) | |
| int | setWidthHeightRatio (const double ratio) const |
| set width height ratio (pixel aspect ratio: x/y) | |
| int | setHeightWidthRatio (const double ratio) const |
| set height width ratio (pixel aspect ratio: y/x) | |
| int | isOutputValueUnused (const unsigned long value) |
| check whether given output value is unused | |
| unsigned long | getOutputDataSize (const int bits=0) const |
| get number of bytes required for the rendered output of a single frame. | |
| const void * | getOutputData (const int bits=0, const unsigned long frame=0, const int planar=0) |
| render pixel data and return pointer to internal memory buffer. | |
| int | getOutputData (void *buffer, const unsigned long size, const int bits=0, const unsigned long frame=0, const int planar=0) |
| render pixel data and output to given memory buffer. | |
| const void * | getOutputPlane (const int plane) const |
| render pixel data and return pointer to given plane (internal memory buffer). | |
| void | deleteOutputData () const |
| delete internal memory buffer used for rendered images. | |
| int | isMonochrome () const |
| check whether image is monochrome or not. | |
| EP_Interpretation | getPhotometricInterpretation () const |
| get code for photometric interpretation (color model). | |
| int | hasSOPclassUID (const char *uid) const |
| check whether image has given SOP class UID. | |
| const DiPixel * | getInterData () const |
| get intermediate pixel data representation (read-only). | |
| DiDisplayFunction * | getDisplayFunction () const |
| get display function | |
| int | setDisplayFunction (DiDisplayFunction *display) |
| set display function | |
| int | setNoDisplayFunction () |
| set no display function. | |
| int | deleteDisplayLUT (const int bits=0) |
| delete specified display LUT(s) | |
| int | convertPValueToDDL (const Uint16 pvalue, Uint16 &ddl, const int bits=8) |
| convert P-value to DDL. | |
| int | setNoVoiTransformation () |
| unset all VOI transformations (windows and LUTs). | |
| int | setMinMaxWindow (const int idx=0) |
| set automatically calculated minimum/maximum window. | |
| int | setHistogramWindow (const double thresh=0.05) |
| set automatically calculated histogram window. | |
| int | setRoiWindow (const unsigned long left_pos, const unsigned long top_pos, const unsigned long width, const unsigned long height, const unsigned long frame=0) |
| set automatically calculated VOI window for the specified Region of Interest (ROI). | |
| int | setWindow (const unsigned long window) |
| set specified window (given by index to window width/center sequence stored in image file). | |
| int | setWindow (const double center, const double width) |
| set specified window (given by window width and center). | |
| int | getWindow (double ¢er, double &width) |
| get current window center and width values | |
| unsigned long | getWindowCount () const |
| get number of VOI windows (stored in image file). | |
| int | setVoiLut (const DcmUnsignedShort &data, const DcmUnsignedShort &descriptor, const DcmLongString *explanation=NULL, const OFBool ignoreDepth=OFFalse) |
| set VOI LUT (given by dcmdata elements). | |
| int | setVoiLut (const unsigned long table, const OFBool ignoreDepth=OFFalse) |
| set VOI LUT (given by index to VOI LUT sequence stored in image file). | |
| unsigned long | getVoiLutCount () const |
| get number of VOI LUTs (stored in image file) | |
| const char * | getVoiTransformationExplanation () const |
| get description of active VOI transformation | |
| const char * | getVoiWindowExplanation (const unsigned long window, OFString &explanation) const |
| get description of specified VOI window (stored in the image file) | |
| const char * | getVoiLutExplanation (const unsigned long table, OFString &explanation) const |
| get description of specified VOI LUT (stored in the image file) | |
| const char * | getModalityLutExplanation () const |
| get description of performed modality LUT transformation | |
| EP_Polarity | getPolarity () const |
| get polarity. | |
| int | setPolarity (const EP_Polarity polarity) |
| set polarity. | |
| int | setHardcopyParameters (const unsigned int min, const unsigned int max, const unsigned int reflect, const unsigned int illumin) |
| set hardcopy parameters. | |
| ES_PresentationLut | getPresentationLutShape () const |
| get shape for presentation transformation. | |
| int | setPresentationLutShape (const ES_PresentationLut shape) |
| set shape for presentation transformation. | |
| int | setPresentationLut (const DcmUnsignedShort &data, const DcmUnsignedShort &descriptor, const DcmLongString *explanation=NULL, const OFBool ignoreDepth=OFFalse) |
| set LUT for presentation transformation. | |
| const char * | getPresentationLutExplanation () const |
| get description of active presentation LUT | |
| int | setInversePresentationLut (const DcmUnsignedShort &data, const DcmUnsignedShort &descriptor, const OFBool ignoreDepth=OFFalse) |
| set inverse LUT for presentation transformation. | |
| int | addOverlay (const unsigned int group, const signed int left_pos, const signed int top_pos, const unsigned int width, const unsigned int height, const DcmOverlayData &data, const DcmLongString &label, const DcmLongString &description, const EM_Overlay mode=EMO_Default) |
| add specified plane to group of additional overlay planes. | |
| int | removeOverlay (const unsigned int group) |
| remove specified (additional) overlay plane | |
| int | removeAllOverlays () |
| remove all additional overlay planes | |
| int | isOverlayVisible (const unsigned int plane, const unsigned int idx=0) |
| check whether specified overlay plane is visible/activated. | |
| int | showOverlay (const unsigned int plane, const unsigned int idx=0) |
| activate specified overlay plane | |
| int | showOverlay (const unsigned int plane, const EM_Overlay mode, const double fore=1.0, const double thresh=0.5, const unsigned int idx=0) |
| activate specified overlay plane and change some parameters | |
| int | showOverlay (const unsigned int plane, const Uint16 pvalue) |
| activate specified overlay plane and change 'pvalue' (only for bitmap shutters) | |
| int | showAllOverlays (const unsigned int idx=0) |
| activate all overlay planes (make them visible) | |
| int | showAllOverlays (const EM_Overlay mode, const double fore=1, const double thresh=0.5, const unsigned int idx=0) |
| activate all overlay planes and set specified parameters | |
| int | hideOverlay (const unsigned int plane, const unsigned int idx=0) |
| deactivate specified overlay plane | |
| int | hideAllOverlays (const unsigned int idx=0) |
| deactivate all overlay planes (make them invisible) | |
| int | placeOverlay (const unsigned int plane, const signed int left_pos, const signed int top_pos, const unsigned int idx=0) |
| move origin of specified overlay plane to given position | |
| unsigned int | getOverlayCount (const unsigned int idx=0) const |
| get number of overlay planes | |
| unsigned int | getOverlayGroupNumber (const unsigned int plane, const unsigned int idx=0) const |
| get group number of specified overlay plane | |
| const char * | getOverlayLabel (const unsigned int plane, const unsigned int idx=0) const |
| get label of specified overlay plane | |
| const char * | getOverlayDescription (const unsigned int plane, const unsigned int idx=0) const |
| get description of specified overlay plane | |
| EM_Overlay | getOverlayMode (const unsigned int plane, const unsigned int idx=0) const |
| get mode of specified overlay plane | |
| const void * | getOverlayData (const unsigned int plane, unsigned int &left_pos, unsigned int &top_pos, unsigned int &width, unsigned int &height, EM_Overlay &mode, const unsigned long frame=0, const int bits=8, const Uint16 fore=0xff, const Uint16 back=0x0, const unsigned int idx=2) const |
| create bitmap for specified overlay plane. | |
| const void * | getFullOverlayData (const unsigned int plane, unsigned int &width, unsigned int &height, const unsigned long frame=0, const int bits=8, const Uint16 fore=0xff, const Uint16 back=0x0, const unsigned int idx=0) const |
| create bitmap for specified overlay plane. | |
| void | deleteOverlayData () const |
| delete buffer for overlay plane data. | |
| unsigned long | create6xxx3000OverlayData (Uint8 *&buffer, const unsigned int plane, unsigned int &width, unsigned int &height, unsigned long &frames, const unsigned int idx=0) const |
| create bitmap for specified overlay plane and store it in (6xxx,3000) format. | |
| DicomImage * | createDicomImage (unsigned long fstart=0, unsigned long fcount=0) const |
| create copy of current image object. | |
| DicomImage * | createScaledImage (const unsigned long width, const unsigned long height=0, const int interpolate=0, int aspect=0) const |
| create scaled copy of current image object (given by exact size). | |
| DicomImage * | createScaledImage (const double xfactor, const double yfactor=0, const int interpolate=0, const int aspect=0) const |
| create scaled copy of current image object (given by scaling factors). | |
| DicomImage * | createScaledImage (const signed long left_pos, const signed long top_pos, unsigned long clip_width, unsigned long clip_height, unsigned long scale_width=0, unsigned long scale_height=0, const int interpolate=0, int aspect=0, const Uint16 pvalue=0) const |
| create scaled copy of specified (clipping) area of the current image object. | |
| DicomImage * | createScaledImage (const signed long left_pos, const signed long top_pos, unsigned long width, unsigned long height, const double xfactor, const double yfactor=0, const int interpolate=0, const int aspect=0, const Uint16 pvalue=0) const |
| create scaled copy of specified (clipping) area of the current image object. | |
| DicomImage * | createClippedImage (const signed long left_pos, const signed long top_pos, unsigned long width=0, unsigned long height=0, const Uint16 pvalue=0) const |
| create copy of specified area of the current image object (clipping). | |
| int | flipImage (int horz=1, int vert=0) const |
| flip current image (horizontally and/or vertically) | |
| DicomImage * | createFlippedImage (int horz=1, int vert=0) const |
| create a flipped copy of the current image. | |
| int | rotateImage (signed int degree) const |
| rotate current image (by steps of 90 degrees) | |
| DicomImage * | createRotatedImage (signed int degree) const |
| create a rotated copy of the current image. | |
| DicomImage * | createMonochromeImage (const double red=0.299, const double green=0.587, const double blue=0.114) const |
| create monochrome copy of the current image. | |
| unsigned long | createWindowsDIB (void *&data, const unsigned long size, const unsigned long frame=0, const int bits=24, const int upsideDown=0, const int padding=1) |
| create true color (24/32 bit) or palette (8 bit) bitmap for MS Windows. | |
| unsigned long | createJavaAWTBitmap (void *&data, const unsigned long frame=0, const int bits=32) |
| create true color (32 bit) or palette (8 bit) bitmap for Java (AWT default format). | |
| DicomImage * | createMonoOutputImage (const unsigned long frame, const int bits) |
| create new single frame DicomImage with applied grayscale transformations. | |
| int | writeFrameToDataset (DcmItem &dataset, const int bits=0, const unsigned long frame=0, const int planar=0) |
| render pixel data of the given frame and write image related attributes to DICOM dataset. | |
| int | writeImageToDataset (DcmItem &dataset, const int mode=0) |
| write current image and related attributes to DICOM dataset. | |
| int | writePPM (const char *filename, const int bits=0, const unsigned long frame=0) |
| write pixel data to PPM file (specified by filename). | |
| int | writePPM (ostream &stream, const int bits=0, const unsigned long frame=0) |
| write pixel data to PPM file (specified by open C++ stream). | |
| int | writePPM (FILE *stream, const int bits=0, const unsigned long frame=0) |
| write pixel data to PPM file (specified by open C stream). | |
| int | writeRawPPM (const char *filename, const int bits=0, const unsigned long frame=0) |
| write pixel data to raw PPM file (specified by filename). | |
| int | writeRawPPM (FILE *stream, const int bits=0, const unsigned long frame=0) |
| write pixel data to raw PPM file (specified by open C stream). | |
| int | writeBMP (FILE *stream, const int bits=0, const unsigned long frame=0) |
| write pixel data to BMP file (specified by open C stream). | |
| int | writeBMP (const char *filename, const int bits=0, const unsigned long frame=0) |
| write pixel data to BMP file (specified by filename). | |
| int | writePluginFormat (const DiPluginFormat *plugin, FILE *stream, const unsigned long frame=0) |
| write pixel data to plugable image format file (specified by open C stream). | |
| int | writePluginFormat (const DiPluginFormat *plugin, const char *filename, const unsigned long frame=0) |
| write pixel data to plugable image format file (specified by filename). | |
Static Public Member Functions | |
| static const char * | getString (const EI_Status status) |
| convert status code to status string | |
| static const char * | getString (const EP_Interpretation interpret) |
| convert photometric interpretation code to interpretation string | |
| static void * | create12BitPackedBitmap (const void *buffer, const unsigned long size, const unsigned long count) |
| create 12 bit packed (monochrome) bitmap for DICOM printers. | |
Protected Member Functions | |
| DicomImage (const DicomImage *dicom, DiImage *image, const EP_Interpretation interpret=EPI_Unknown) | |
| constructor, create copy of given image object with different image data and photometric interpretation | |
| void | Init () |
| initialize object. | |
| int | checkDataDictionary () |
| check whether data dictionary is present | |
| const char * | getSOPclassUID () const |
| get SOP class UID of current image object | |
| int | normalizeDegreeValue (signed int °ree) const |
| normalize given degree value (for internal use). | |
Private Member Functions | |
| DicomImage (const DicomImage &) | |
| DicomImage & | operator= (const DicomImage &) |
Private Attributes | |
| EI_Status | ImageStatus |
| current state of converting progress (error level) | |
| EP_Interpretation | PhotometricInterpretation |
| dicom color model (enumeration) | |
| DiDocument * | Document |
| points to document object | |
| DiImage * | Image |
| points to image object | |
The main purpose of these modules is image display.
Definition at line 68 of file dcmimage.h.
|
||||||||||||||||||||
|
constructor, open a DICOM file. opens specified file and reads image related data, creates internal representation of image data. use getStatus() to obtain detailed information about any errors.
|
|
||||||||||||||||||||||||
|
constructor, use a given DcmObject
|
|
||||||||||||||||||||||||||||||||
|
constructor, use a given DcmObject with specified rescale/slope. NB: This constructor ignores the Photometric Interpretation stored in the DICOM dataset and always creates a MONOCHROME2 image - useful in combination with Presentation States.
|
|
||||||||||||||||||||||||||||||||||||
|
constructor, use a given DcmObject with specified modality LUT. NB: This constructor ignores the Photometric Interpretation stored in the DICOM dataset and always creates a MONOCHROME2 image - useful in combination with Presentation States.
|
|
||||||||||||||||
|
constructor, create copy of given image object with different image data and photometric interpretation
|
|
||||||||||||||||||||||||||||||||||||||||
|
add specified plane to group of additional overlay planes. replaces old overlay plane if group number already exists.
Definition at line 920 of file dcmimage.h. References DiMonoImage::addOverlay(), DiImage::getMonoImagePtr(), and Image. |
|
|
check whether data dictionary is present
|
|
||||||||||||||||
|
convert P-value to DDL. conversion uses display LUT if present, linear scaling otherwise.
Definition at line 537 of file dcmimage.h. References DiMonoImage::convertPValueToDDL(), DiImage::getMonoImagePtr(), and Image. |
|
||||||||||||||||
|
create 12 bit packed (monochrome) bitmap for DICOM printers. Memory is not handled internally - must be deleted from calling program.
Definition at line 1529 of file dcmimage.h. References DiMonoImage::createPackedBitmap(). |
|
||||||||||||||||||||||||||||
|
create bitmap for specified overlay plane and store it in (6xxx,3000) format. (1 bit allocated and stored, foreground color is 1, background color is 0, data is 16 bit padded - even length) memory is allocated but not handled internally - must be deleted from calling program.
Definition at line 1269 of file dcmimage.h. References DiMonoImage::create6xxx3000OverlayData(), DiImage::getMonoImagePtr(), and Image. |
|
||||||||||||||||||||||||
|
create copy of specified area of the current image object (clipping). memory is not handled internally - must be deleted from calling program.
|
|
||||||||||||
|
create copy of current image object. memory is not handled internally - must be deleted from calling program.
|
|
||||||||||||
|
create a flipped copy of the current image. memory is not handled internally - must be deleted from calling program.
|
|
||||||||||||||||
|
create true color (32 bit) or palette (8 bit) bitmap for Java (AWT default format). 32 bit images allocate 32 bits per pixel (RGB), but only use the upper 24 bits. The sample order for color images is: Red, Green, Blue. Memory is not handled internally - must be deleted from calling program. This method does not work if original YCbCr color model is retained (see CIF_KeepYCbCrColorModel).
Definition at line 1512 of file dcmimage.h. References DiImage::createAWTBitmap(), and Image. |
|
||||||||||||||||
|
create monochrome copy of the current image. equal to createDicomImage() for monochrome images. memory is not handled internally - must be deleted from calling program. This method does not work if original YCbCr color model is retained (see CIF_KeepYCbCrColorModel).
|
|
||||||||||||
|
create new single frame DicomImage with applied grayscale transformations. The method getOutputData() is used internally for the new bitmap. Limited to monochrome images.
|
|
|
create a rotated copy of the current image. memory is not handled internally - must be deleted from calling program.
|
|
||||||||||||||||||||||||||||||||||||||||
|
create scaled copy of specified (clipping) area of the current image object. memory is not handled internally - must be deleted from calling program. NB: clipping and interpolated scaling at the same moment is not yet fully implemented!
|
|
||||||||||||||||||||||||||||||||||||||||
|
create scaled copy of specified (clipping) area of the current image object. memory is not handled internally - must be deleted from calling program. NB: clipping and interpolated scaling at the same moment is not yet fully implemented!
|
|
||||||||||||||||||||
|
create scaled copy of current image object (given by scaling factors). memory is not handled internally - must be deleted from calling program.
|
|
||||||||||||||||||||
|
create scaled copy of current image object (given by exact size). memory is not handled internally - must be deleted from calling program.
|
|
||||||||||||||||||||||||||||
|
create true color (24/32 bit) or palette (8 bit) bitmap for MS Windows. 8 bit images require an appropriate color palette (256 entries, values: 0 to 255) and are only applicable to monochrome images, the beginning of a each line starts on a 32-bit address (if 'padding' is true); 24 bit images store 24 bits per pixel (RGB) and do align each line to a 32-bit address (if 'padding' is true); 32 bit images store 32 bits per pixel (RGB), but only use the upper 24 bits. The sample order for color images is (i.e. reverse): Blue, Green, Red. The memory buffer can be allocated both externally (from the calling program) and internally (inside this class/module). If the 'data' parameter is not NULL and the 'size' parameter, which describes the size (in bytes) of the allocated buffer, is suffiently large, the bitmap is stored in this buffer. Otherwise (i.e. 'data' is NULL) the memory is allocated internally. Please note that in both cases the memory is not handled internally after this method has finished and, therefore, must be deleted from the calling program. This method does not work if original YCbCr color model is retained (see CIF_KeepYCbCrColorModel).
Definition at line 1489 of file dcmimage.h. References DiImage::createDIB(), and Image. |
|
|
delete specified display LUT(s)
Definition at line 520 of file dcmimage.h. References DiMonoImage::deleteDisplayLUT(), DiImage::getMonoImagePtr(), and Image. |
|
|
delete internal memory buffer used for rendered images. Save memory if data is no longer needed. Definition at line 429 of file dcmimage.h. References DiImage::deleteOutputData(), and Image. |