DCMTK
Version 3.6.5
OFFIS DICOM Toolkit
|
the list of referenced images contained in a presentation state (internal use only). More...
Public Member Functions | |
DVPSReferencedImage_PList () | |
default constructor | |
DVPSReferencedImage_PList (const DVPSReferencedImage_PList ©) | |
copy constructor | |
DVPSReferencedImage_PList * | clone () |
clone method. More... | |
virtual | ~DVPSReferencedImage_PList () |
destructor | |
OFCondition | read (DcmItem &dset) |
reads a list of image references (ReferencedImageSequence) from a DICOM dataset. More... | |
OFCondition | write (DcmItem &dset) |
writes the list of image references managed by this object to a DICOM dataset. More... | |
void | clear () |
reset the object to initial state. More... | |
OFBool | isValid (OFString &sopclassuid) |
checks if images are referenced within this ReferencedImageSequence and whether all images share the same SOP class UID. More... | |
DVPSReferencedImage * | findImageReference (const char *sopinstanceuid) |
checks if an image reference with the given SOP instance UID exists in this ReferencedImageSequence. More... | |
void | removeFrameReference (const char *sopinstanceuid, unsigned long frame, unsigned long numberOfFrames) |
update the reference to the given image such that the given frame is not referenced any more. More... | |
void | removeImageReference (const char *sopinstanceuid) |
checks if an image reference with the given SOP instance UID exists in this ReferencedImageSequence and deletes it. More... | |
OFCondition | addImageReference (const char *sopclassUID, const char *instanceUID, const char *frames=NULL) |
add a new image reference. More... | |
OFCondition | addImageReference (const char *sopclassUID, const char *instanceUID, unsigned long frame, DVPSObjectApplicability applicability) |
add a new image reference. More... | |
void | removeImageReference (DVPSReferencedSeries_PList &allReferences, const char *instanceUID, unsigned long frame, unsigned long numberOfFrames, DVPSObjectApplicability applicability) |
removes a reference to an image or frame. More... | |
size_t | size () const |
gets the number of image references in this list. More... | |
OFCondition | getImageReference (size_t idx, OFString &sopclassUID, OFString &instanceUID, OFString &frames) |
gets an image reference with the given index. More... | |
OFBool | isApplicable (const char *instanceUID, unsigned long frame) |
checks if the object containing this list of image references is applicable to the given image and frame. More... | |
OFBool | matchesApplicability (const char *instanceUID, unsigned long frame, DVPSObjectApplicability applicability) |
checks if the object containing this list of image references matches exactly the applicability defined by the instanceUID, frame and applicability parameters. More... | |
Private Member Functions | |
DVPSReferencedImage_PList & | operator= (const DVPSReferencedImage_PList &) |
private undefined assignment operator | |
Private Attributes | |
OFList< DVPSReferencedImage * > | list_ |
the list maintained by this object | |
the list of referenced images contained in a presentation state (internal use only).
This class manages the data structures comprising one complete Reference Image Sequence which is contained in one item of the Referenced Series Sequence in a Presentation State object.
OFCondition DVPSReferencedImage_PList::addImageReference | ( | const char * | sopclassUID, |
const char * | instanceUID, | ||
const char * | frames = NULL |
||
) |
add a new image reference.
Checks if the referenced SOP instance UID already exists in this sequence. If it exists, an error code is returned. Otherwise a new image reference is created and added to the ReferencedImageSequence.
sopclassUID | the SOP class UID of the image reference to be added. |
instanceUID | the SOP instance UID of the image reference to be added. |
frames | a list of frame numbers in DICOM IS format (integer numbers separated by '\' characters). Default: frame numbers absent. The frame numbers are required if the referenced image is a multiframe image. |
OFCondition DVPSReferencedImage_PList::addImageReference | ( | const char * | sopclassUID, |
const char * | instanceUID, | ||
unsigned long | frame, | ||
DVPSObjectApplicability | applicability | ||
) |
add a new image reference.
Checks if the referenced SOP instance UID already exists in this sequence. If it exists, an error code is returned. Otherwise a new image reference is created and added to the ReferencedImageSequence.
sopclassUID | the SOP class UID of the image reference to be added. |
instanceUID | the SOP instance UID of the image reference to be added. |
frame | the frame number of the image reference (current image) to be added. |
applicability | the applicability of the image reference (DVPSB_currentFrame or DVPSB_currentImage) |
void DVPSReferencedImage_PList::clear | ( | ) |
reset the object to initial state.
After this call, the object is in the same state as after creation with the default constructor.
|
inline |
clone method.
DVPSReferencedImage* DVPSReferencedImage_PList::findImageReference | ( | const char * | sopinstanceuid | ) |
checks if an image reference with the given SOP instance UID exists in this ReferencedImageSequence.
sopinstanceuid | the SOP instance UID of the searched image reference |
OFCondition DVPSReferencedImage_PList::getImageReference | ( | size_t | idx, |
OFString & | sopclassUID, | ||
OFString & | instanceUID, | ||
OFString & | frames | ||
) |
gets an image reference with the given index.
idx | index, must be < size(). |
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 |
OFBool DVPSReferencedImage_PList::isApplicable | ( | const char * | instanceUID, |
unsigned long | frame | ||
) |
checks if the object containing this list of image references is applicable to the given image and frame.
instanceUID | SOP instance UID of the current image |
frame | number of the current frame |
checks if images are referenced within this ReferencedImageSequence and whether all images share the same SOP class UID.
sopclassuid | should be an empty string when called. Returns the SOP class UID of the images in the list. |
OFBool DVPSReferencedImage_PList::matchesApplicability | ( | const char * | instanceUID, |
unsigned long | frame, | ||
DVPSObjectApplicability | applicability | ||
) |
checks if the object containing this list of image references matches exactly the applicability defined by the instanceUID, frame and applicability parameters.
instanceUID | SOP instance UID of the current image |
frame | number of the current frame |
OFCondition DVPSReferencedImage_PList::read | ( | DcmItem & | dset | ) |
reads a list of image references (ReferencedImageSequence) from a DICOM dataset.
The DICOM elements of the image references item are copied from the dataset to this object. The completeness of all items (presence of all required elements, value multiplicity) is checked. If this method returns an error code, the object is in undefined state afterwards.
dset | the DICOM dataset from which the sequence is to be read |
void DVPSReferencedImage_PList::removeFrameReference | ( | const char * | sopinstanceuid, |
unsigned long | frame, | ||
unsigned long | numberOfFrames | ||
) |
update the reference to the given image such that the given frame is not referenced any more.
sopinstanceuid | the SOP instance UID of the image reference |
frame | the frame reference |
numberOfFrames | the number of frames of the image reference |
void DVPSReferencedImage_PList::removeImageReference | ( | const char * | sopinstanceuid | ) |
checks if an image reference with the given SOP instance UID exists in this ReferencedImageSequence and deletes it.
sopinstanceuid | the SOP instance UID of the image reference to be removed. |
void DVPSReferencedImage_PList::removeImageReference | ( | DVPSReferencedSeries_PList & | allReferences, |
const char * | instanceUID, | ||
unsigned long | frame, | ||
unsigned long | numberOfFrames, | ||
DVPSObjectApplicability | applicability | ||
) |
removes a reference to an image or frame.
If the current reference is empty ("global"), an explicit list of references is constructed from the list of series/instance references. The image or frame reference is removed from the total list of references in this object. If the only reference contained in this object is removed, the reference list becomes empty which means that the current reference becomes "global". This case must be handled by the caller.
allReferences | list of series/instance references registered for the presentation state. |
instanceUID | SOP instance UID of the current image |
frame | number of the current frame |
numberOfFrames | the number of frames of the current image |
applicability | the applicability of the image reference to be removed (DVPSB_currentFrame or DVPSB_currentImage) |
|
inline |
gets the number of image references in this list.
OFCondition DVPSReferencedImage_PList::write | ( | DcmItem & | dset | ) |
writes the list of image references managed by this object to a DICOM dataset.
Copies of the DICOM element managed by this object are inserted into the DICOM dataset.
dset | the DICOM dataset to which the ReferencedImageSequence is written |