📄 dvpsibl.h
字号:
/** gets the (optional) magnification type for the given registered image box. * @param idx index, must be < getNumberOfImages() * @return magnification type, may be NULL. */ const char *getImageMagnificationType(size_t idx); /** gets the (optional) smoothing type for the given registered image box. * @param idx index, must be < getNumberOfImages() * @return smoothing type, may be NULL. */ const char *getImageSmoothingType(size_t idx); /** gets the (optional) configuration information for the given registered image box. * @param idx index, must be < getNumberOfImages() * @return configuration information, may be NULL. */ const char *getImageConfigurationInformation(size_t idx); /** gets the current SOP Instance UID for the given registered image box.. * @param idx index, must be < getNumberOfImages() * @return SOP Instance UID, may be NULL. */ const char *getSOPInstanceUID(size_t idx); /** gets the referenced Presentation LUT SOP Instance UID for the given registered image box.. * @param idx index, must be < getNumberOfImages() * @return SOP Instance UID, may be NULL. */ const char *getReferencedPresentationLUTInstanceUID(size_t idx); /** returns the image UIDs that are required to look up the referenced image in the database * @param idx index, must be < getNumberOfImages() * @param studyUID Study UID of the image * @param seriesUID series UID of the image * @param instanceUID instance UID of the image * @return EC_Normal if successful, an error code otherwise. */ OFCondition getImageReference(size_t idx, const char *&studyUID, const char *&seriesUID, const char *&instanceUID); /** writes the attributes managed by the referenced object that are part of a * basic grayscale image box N-SET request into the DICOM dataset. * Copies of the DICOM element managed by this object are inserted into * the DICOM dataset. * @param idx index, must be < getNumberOfImages() * @param dset the dataset to which the data is written * @return EC_Normal if successful, an error code otherwise. */ OFCondition prepareBasicImageBox(size_t idx, DcmItem &dset); /** sets a new log stream * @param stream new log stream, NULL for default logstream * @param verbMode verbose mode flag * @param dbgMode debug mode flag */ void setLog(OFConsole *stream, OFBool verbMode, OFBool dbgMode); /** checks whether the given SOP instance UID is used as * referenced Presentation LUT SOP Instance UID inside the list of * image boxes managed by this object. * @param uid name of UID * @return OFTrue if UID is used, OFFalse otherwise. */ OFBool presentationLUTInstanceUIDisUsed(const char *uid); /** if only one Presentation LUT is required to render all images * managed by this object, returns the UID of this presentation LUT. * Otherwise returns NULL. * @param filmBox UID of Presentation LUT specified on Film Box * level. May be NULL or empty string if absent. * @return UID of Presentation LUT if found, NULL or empty string otherwise. */ const char *haveSinglePresentationLUTUsed(const char *filmBox); /** creates a number of image boxes as part of a Print SCP N-CREATE operation. * The previous content of the list is deleted. * @param numBoxes number of boxes to be created * @param studyUID study instance UID under which Hardcopy Grayscale images will be saved * @param seriesUID series instance UID under which Hardcopy Grayscale images will be saved * @param aetitle retrieve AE title for Hardcopy Grayscale images * @return OFTrue if successful, OFFalse otherwise. */ OFBool printSCPCreate( unsigned long numBoxes, DcmUniqueIdentifier& studyUID, DcmUniqueIdentifier& seriesUID, const char *aetitle); /** writes a Referenced Image Box Sequence for the image boxes * managed by this object. Used in a Print SCP N-CREATE operation. * @param dset the dataset to which the data is written * @return EC_Normal if successful, an error code otherwise. */ OFCondition writeReferencedImageBoxSQ(DcmItem &dset); /** checks whether the given Presentation LUT type could be used together * with all image boxes in this list on a Print SCP that requires a matching * alignment between a Presentation LUT and the image pixel data. * @param align LUT alignment type * @return OFTrue if matching, OFFalse otherwise */ OFBool matchesPresentationLUT(DVPSPrintPresentationLUTAlignment align) const; /** looks up the image box with the given SOP instance UID in this list * and returns a pointer to a new object containing a copy of this * image box. If the object is not found, NULL is returned. * @param uid SOP instance UID of the image box to be looked up * @return pointer to copied image box object, may be NULL. */ DVPSImageBoxContent *duplicateImageBox(const char *uid); /** checks whether any of the image boxes managed by this list * has the same position as the given one, but a different * SOP instance UID. This is used during an Print SCP N-SET operation * to check whether a position clash exists. * @param uid SOP instance UID of the image box to be looked up * @param position image position to be looked up */ OFBool haveImagePositionClash(const char *uid, Uint16 position); /** adds the given image box object to this list. Any other object existing * in the list with the same SOP instance UID is removed. * Used during a Print SCP image box N-SET operation. * @param newImageBox new image box object to be added to the list. */ void replace(DVPSImageBoxContent *newImageBox); /** checks whether any of the image boxes has an image box position * assigned. If no image box position is assigned, the object list * cannot be written and a Print SCP should return a warning * status upon receipt of an N-ACTION request. * @return OFTrue if empty page (no image box position assigned), OFFalse otherwise. */ OFBool emptyPageWarning(); private: /** private undefined assignment operator */ DVPSImageBoxContent_PList& operator=(const DVPSImageBoxContent_PList&); /** returns a pointer to the image box with the given * index or NULL if it does not exist. * @param idx index, must be < size() * @return pointer to image box object or NULL */ DVPSImageBoxContent *getImageBox(size_t idx); /** the list maintained by this object */ OFList<DVPSImageBoxContent *> list_; /** output stream for error messages, never NULL */ OFConsole *logstream; /** flag indicating whether we're operating in verbose mode */ OFBool verboseMode; /** flag indicating whether we're operating in debug mode */ OFBool debugMode; };#endif/* * $Log: dvpsibl.h,v $ * Revision 1.23 2005/12/08 16:03:51 meichel * Changed include path schema for all DCMTK header files * * Revision 1.22 2003/06/04 10:18:06 meichel * Replaced private inheritance from template with aggregation * * Revision 1.21 2001/09/26 15:36:13 meichel * Adapted dcmpstat to class OFCondition * * Revision 1.20 2001/06/01 15:50:18 meichel * Updated copyright header * * Revision 1.19 2000/07/04 15:58:02 joergr * Added support for overriding the presentation LUT settings made for the * image boxes. * * Revision 1.18 2000/06/14 11:28:14 joergr * Added methods to access the attributes Polarity and Requested Image Size. * * Revision 1.17 2000/06/08 10:44:29 meichel * Implemented Referenced Presentation LUT Sequence on Basic Film Session level. * Empty film boxes (pages) are not written to file anymore. * * Revision 1.16 2000/06/07 14:17:41 joergr * Added methods to access the image polarity attribute. * * Revision 1.15 2000/06/02 16:00:48 meichel * Adapted all dcmpstat classes to use OFConsole for log and error output * * Revision 1.14 2000/05/31 12:56:39 meichel * Added initial Print SCP support * * Revision 1.13 2000/03/08 16:28:53 meichel * Updated copyright header. * * Revision 1.12 1999/10/19 14:46:03 meichel * added support for the Basic Annotation Box SOP Class * as well as access methods for Max Density and Min Density. * * Revision 1.11 1999/10/07 17:21:48 meichel * Reworked management of Presentation LUTs in order to create tighter * coupling between Softcopy and Print. * * Revision 1.10 1999/09/24 15:23:45 meichel * Print spooler (dcmprtsv) now logs diagnostic messages in log files * when operating in spool mode. * * Revision 1.9 1999/09/17 14:33:57 meichel * Completed print spool functionality including Supplement 22 support * * Revision 1.8 1999/09/15 17:43:28 meichel * Implemented print job dispatcher code for dcmpstat, adapted dcmprtsv * and dcmpsprt applications. * * Revision 1.7 1999/09/10 12:46:47 meichel * Added implementations for a number of print API methods. * * Revision 1.6 1999/09/09 14:57:33 thiel * Added methods for print spooler * * Revision 1.5 1999/09/01 16:14:40 meichel * Added support for requested image size to print routines * * Revision 1.4 1999/08/31 14:09:11 meichel * Added get/set methods for stored print attributes * * Revision 1.3 1999/08/27 15:57:56 meichel * Added methods for saving hardcopy images and stored print objects * either in file or in the local database. * * Revision 1.2 1999/08/26 09:30:59 thiel * Add extensions for the usage of the StoredPrint * * Revision 1.1 1999/07/30 13:34:48 meichel * Added new classes managing Stored Print objects * * */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -