DCMTK Version 3.7.0 OFFIS DICOM Toolkit

Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
DVPSReferencedImage Class Reference

an item of the referenced image sequence in a presentation state (internal use only). More...

## Public Types
enum | E_ClassValidationMode { CVM_standard , CVM_accept_Presentation_and_Processing , CVM_accept_all }
| SOPClassUID Validation Mode. More...

## Public Member Functions
| DVPSReferencedImage ()
| default constructor
| DVPSReferencedImage (const DVPSReferencedImage &copy)
| copy constructor
DVPSReferencedImage * | clone ()
| clone method. More...
virtual | ~DVPSReferencedImage ()
| destructor
OFCondition | read (DcmItem &dset)
| reads an image reference from a DICOM dataset. More...
OFCondition | write (DcmItem &dset)
| writes the image reference managed by this object to a DICOM dataset. More...
OFBool | validateSOPClassUID (OFString &sopclassuid)
| check if the passed SOP Class UID is equal to the one stored in this object. More...
void | setSOPClassUID (const char *uid)
| set SOP Class UID of this image reference. More...
void | setSOPInstanceUID (const char *uid)
| set SOP Instance UID of this image reference. More...
void | setFrameNumbers (const char *frames)
| set the list of frame numbers of this image reference. More...
OFBool | isSOPInstanceUID (const char *uid)
| compare SOP Instance UID. More...
OFCondition | getImageReference (OFString &sopclassUID, OFString &instanceUID, OFString &frames)
| gets the image reference managed by this object. More...
OFBool | appliesToFrame (unsigned long frame)
| checks whether this image reference applies to the given frame number. More...
OFBool | appliesOnlyToFrame (unsigned long frame)
| checks whether this image reference applies exactly to the given frame number. More...
OFBool | appliesToAllFrames ()
| checks whether this image reference applies all frames because the referencedFrameNumber is empty. More...
void | removeFrameReference (unsigned long frame, unsigned long numberOfFrames)
| update the reference such that the given frame is not referenced any more. More...

## Private Member Functions
DVPSReferencedImage & | operator= (const DVPSReferencedImage &source)
| undefined private assignment operator
void | flushCache ()
| flushes the frame cache.
void | updateCache ()
| updated the frame cache.

## Private Attributes
DcmUniqueIdentifier | referencedSOPClassUID
| VR=UI, VM=1, Type 1c.
DcmUniqueIdentifier | referencedSOPInstanceUID
| VR=UI, VM=1, Type 1c.
DcmIntegerString | referencedFrameNumber
| VR=IS, VM=1-n, Type 1c.
Sint32 * | frameCache
| if exists, contains binary representation of referencedFrameNumber
unsigned long | frameCacheEntries
| describes array size of frameCache

## Detailed Description

an item of the referenced image sequence in a presentation state (internal use only).

This class manages the data structures comprising one item of the Reference Image Sequence which is contained in the Referenced Series Sequence in a Presentation State object.

## Member Enumeration Documentation

## ◆ E_ClassValidationMode

enum DVPSReferencedImage::E_ClassValidationMode

SOPClassUID Validation Mode.

Enumerator
CVM_standard | enforce the rule specified in DICOM Part 3, C.11.11, that the referenced SOP class must be same for all images referenced by a presentation state.
CVM_accept_Presentation_and_Processing | somewhat relax the rule that the referenced SOP class must be same for all images referenced by a presentation state by permitting instances of related "for presentation" and "for processing" SOP classes to be referenced from one presentation state.
CVM_accept_all | ignore the rule that the referenced SOP class must be same for all images referenced by a presentation state

## Member Function Documentation

## ◆ appliesOnlyToFrame()

OFBool DVPSReferencedImage::appliesOnlyToFrame | ( | unsigned long | frame | ) |

checks whether this image reference applies exactly to the given frame number.

This is the case if the referencedFrameNumber only contains the given frame number.

Parameters

  frame | frame number to be checked

Returns
  OFTrue if the image reference applies only to the given frame number, OFFalse otherwise.

## ◆ appliesToAllFrames()

OFBool DVPSReferencedImage::appliesToAllFrames | ( |  | ) |

checks whether this image reference applies all frames because the referencedFrameNumber is empty.

Returns
  OFTrue if the image reference applies to all frames, OFFalse otherwise.

## ◆ appliesToFrame()

OFBool DVPSReferencedImage::appliesToFrame | ( | unsigned long | frame | ) |

checks whether this image reference applies to the given frame number.

An image reference applies to a frame if the frame number is explicitly listed in the referencedFrameNumber attribute or if the referencedFrameNumber is empty.

Parameters

  frame | frame number to be checked

Returns
  OFTrue if the image reference applies to the given frame number, OFFalse otherwise.

## ◆ clone()

DVPSReferencedImage* DVPSReferencedImage::clone | ( |  | ) |
| inline

clone method.

Returns
  a pointer to a new DVPSReferencedImage object containing a copy of this object.

## ◆ getImageReference()

OFCondition DVPSReferencedImage::getImageReference | ( | OFString & | sopclassUID,
|  | OFString & | instanceUID,
|  | OFString & | frames
| ) |  |

gets the image reference managed by this object.

Parameters

  sopclassUID | the SOP Class UID is returned in this string
  instanceUID | the SOP Instance UID is returned in this string
  frames | the list of frames is returned in this string

Returns
  EC_Normal if successful, an error code otherwise.

## ◆ isSOPInstanceUID()

OFBool DVPSReferencedImage::isSOPInstanceUID | ( | const char * | uid | ) |

compare SOP Instance UID.

Parameters

  uid | the UID to be compared

Returns
  OFTrue if the referencedSOPInstanceUID of this object is equal to uid, OFFalse otherwise.

## ◆ read()

OFCondition DVPSReferencedImage::read | ( | DcmItem & | dset | ) |

reads an image reference from a DICOM dataset.

The DICOM elements of the referenced image item are copied from the dataset to this object. The completeness of the item (presence of all required elements, value multiplicity) is checked. If this method returns an error code, the object is in undefined state afterwards.

Parameters

  dset | the item of the ReferencedImageSequence from which the data is to be read

Returns
  EC_Normal if successful, an error code otherwise.

## ◆ removeFrameReference()

void DVPSReferencedImage::removeFrameReference | ( | unsigned long | frame,
|  | unsigned long | numberOfFrames
| ) |  |

update the reference such that the given frame is not referenced any more.

Parameters

  frame | the frame reference
  numberOfFrames | the number of frames of the image reference

## ◆ setFrameNumbers()

void DVPSReferencedImage::setFrameNumbers | ( | const char * | frames | ) |

set the list of frame numbers of this image reference.

Parameters

  frames | a list of frame numbers in DICOM IS format (integer numbers separated by '\' characters)

## ◆ setSOPClassUID()

void DVPSReferencedImage::setSOPClassUID | ( | const char * | uid | ) |

set SOP Class UID of this image reference.

Parameters

  uid | a pointer to the UID, which is copied into this object.

## ◆ setSOPInstanceUID()

void DVPSReferencedImage::setSOPInstanceUID | ( | const char * | uid | ) |

set SOP Instance UID of this image reference.

Parameters

  uid | a pointer to the UID, which is copied into this object.

## ◆ validateSOPClassUID()

OFBool DVPSReferencedImage::validateSOPClassUID | ( | OFString & | sopclassuid | ) |

check if the passed SOP Class UID is equal to the one stored in this object.

If sopclassuid is empty, the referencedSOPClassUID is assigned to it and the method returns OFTrue. Otherwise the passed UID is compared with the referencedSOPClassUID. OFTrue is returned if they are equal, OFFalse otherwise. This method is used to check whether all image references in a presentation state share the same SOP Class UID.

Parameters

  sopclassuid | the SOP class UID to be validated

Returns
  OFTrue if successful, OFFalse if unsuccessful.

## ◆ write()

OFCondition DVPSReferencedImage::write | ( | DcmItem & | dset | ) |

writes the image reference managed by this object to a DICOM dataset.

Copies of the DICOM element managed by this object are inserted into the DICOM dataset.

Parameters

  dset | the the item of the ReferencedImageSequence to which the data is written

Returns
  EC_Normal if successful, an error code otherwise.

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

- dcmpstat/include/dcmtk/dcmpstat/dvpsri.h

Generated on Mon Dec 15 2025 for DCMTK Version 3.7.0 by Doxygen 1.9.1