⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dsrdoc.h

📁 转化为DIB位图再显示出来的dicom文件C++代码
💻 H
📖 第 1 页 / 共 4 页
字号:
     ** @param  doc     document containing the XML file content     *  @param  cursor  cursor pointing to the starting node     *  @param  flags   optional flag used to customize the reading process (see DSRTypes::XF_xxx)     ** @return status, EC_Normal if successful, an error code otherwise     */    OFCondition readXMLDocumentData(const DSRXMLDocument &doc,                                    DSRXMLCursor cursor,                                    const size_t flags);    /** read XML verifying observer data     ** @param  doc     document containing the XML file content     *  @param  cursor  cursor pointing to the starting node     *  @param  flags   optional flag used to customize the reading process (see DSRTypes::XF_xxx)     ** @return status, EC_Normal if successful, an error code otherwise     */    OFCondition readXMLVerifyingObserverData(const DSRXMLDocument &doc,                                             DSRXMLCursor cursor,                                             const size_t flags);    /** render patient name, sex, birthdate and ID in HTML format     ** @param  stream  output stream to which the HTML document is written     *  @param  flags   flag used to customize the output (see DSRTypes::HF_xxx)     */    void renderHTMLPatientData(ostream &stream,                               const size_t flags);    /** render list of referenced SOP instances in HTML format     ** @param  stream   output stream to which the HTML document is written     *  @param  refList  list of referenced SOP instances to be rendered     *  @param  flags    flag used to customize the output (see DSRTypes::HF_xxx)     */    void renderHTMLReferenceList(ostream &stream,                                 DSRSOPInstanceReferenceList &refList,                                 const size_t flags);    /** check the given dataset before reading.     *  This methods checks whether the dataset contains at least the DICOM attributes SOP class UID     *  and modality.  Any incorrectness regarding these two attributes is reported to the log stream     *  (if valid).  Currently unsupported SOP classes are also reported as an error.     ** @param  dataset       DICOM dataset to be checked     *  @param  documentType  SR document type retrieved from the SOP class UID     ** @return status, EC_Normal if successful, an error code otherwise     */    OFCondition checkDatasetForReading(DcmItem &dataset,                                       E_DocumentType &documentType);    /** update several DICOM attributes.     *  (e.g. set the modality attribute, generate a new SOP instance UID if required, set date/time, etc.)     ** @param  updateAll  flag indicating whether all DICOM attributes should be updated or only the     *                     completion and verification flag. (set DICOM defined terms from enum values)     */    void updateAttributes(const OFBool updateAll = OFTrue);  private:    /// SR document tree    DSRDocumentTree DocumentTree;    /// output stream for error messages, NULL for no messages    OFConsole *LogStream;    /// flag indicating whether is document is finalized or not    OFBool             FinalizedFlag;    /// enumerated value: partial, complete    E_CompletionFlag   CompletionFlagEnum;    /// enumerated value: unverified, verified    E_VerificationFlag VerificationFlagEnum;    /// defined term: see class DSRTypes    E_CharacterSet     SpecificCharacterSetEnum;    // DICOM attributes are listed ordered by module.    // The comments for each attribute describe "Name: (VR, VM, Type)".    // Please note that for particular SR documents (e.g. Key Object Selection)    // other rules might apply.  See DICOM standard for further reference.    // --- SOP Common Module (M) ---    // (see SR Document General Module)    /// SOP Class UID: (UI, 1, 1)    DcmUniqueIdentifier SOPClassUID;    /// SOP Instance UID: (UI, 1, 1)    DcmUniqueIdentifier SOPInstanceUID;    /// Specific Character Set: (CS, 1-n, 1C)    DcmCodeString       SpecificCharacterSet;    /// Instance Creation Date: (DA, 1, 3)    DcmDate             InstanceCreationDate;    /// Instance Creation Time: (TM, 1, 3)    DcmTime             InstanceCreationTime;    /// Instance Creator UID: (UI, 1, 3)    DcmUniqueIdentifier InstanceCreatorUID;    /// Coding Scheme Identification Sequence: (SQ, 1, 3)    DSRCodingSchemeIdentificationList CodingSchemeIdentification;    // --- General Study Module (M) ---    /// Study Instance UID: (UI, 1, 1)    DcmUniqueIdentifier StudyInstanceUID;    /// Study Date: (DA, 1, 2)    DcmDate             StudyDate;    /// StudyTime: (TM, 1, 2)    DcmTime             StudyTime;    /// ReferringPhysiciansName: (PN, 1, 2)    DcmPersonName       ReferringPhysiciansName;    /// Study ID: (SH, 1, 2)    DcmShortString      StudyID;    /// Accession Number: (SH, 1, 2)    DcmShortString      AccessionNumber;    /// Study Description: (LO, 1, 3)    DcmLongString       StudyDescription;    // --- General Series Module ---    // (see SR Document Series Module)    /// Series Description: (LO, 1, 3)    DcmLongString       SeriesDescription;    // --- Patient Module (M) ---    /// Person Name: (PN, 1, 2)    DcmPersonName       PatientsName;    /// Patient ID: (LO, 1, 2)    DcmLongString       PatientID;    /// Patient Birth Date: (DA, 1, 2)    DcmDate             PatientsBirthDate;    /// Patient Sex: (CS, 1, 2)    DcmCodeString       PatientsSex;    // --- General Equipment Module (M) ---    /// Manufacturer: (LO, 1, 2)    DcmLongString       Manufacturer;    // --- Frame of Reference (C) ---    // tbd: conditional module for X-Ray Radiation Dose SR not yet supported    // --- SR Document Series Module (M) ---    /// Modality: (CS, 1, 1)    DcmCodeString       Modality;    /// Series Instance Number: (UI, 1, 1)    DcmUniqueIdentifier SeriesInstanceUID;    /// Series Number: (IS, 1, 1)    DcmIntegerString    SeriesNumber;    /// Referenced Performed Procedure Step Sequence: (SQ, 1, 2)    DcmSequenceOfItems  ReferencedPerformedProcedureStepSequence;    // --- SR Document General Module (M) ---    /// Instance Number: (IS, 1, 1)    DcmIntegerString    InstanceNumber;    /// Completion Flag: (CS, 1, 1)    DcmCodeString       CompletionFlag;    /// Completion Flag Description: (LO, 1, 3)    DcmLongString       CompletionFlagDescription;    /// Verification Flag: (CS, 1, 1)    DcmCodeString       VerificationFlag;    /// Content Date: (DA, 1, 1)    DcmDate             ContentDate;    /// Content Time: (TM, 1, 1)    DcmTime             ContentTime;    /// Verifying Observer Sequence: (SQ, 1, 1C)    DcmSequenceOfItems  VerifyingObserver;    /// Predecessor Documents Sequence: (SQ, 1, 1C)    DSRSOPInstanceReferenceList PredecessorDocuments;    /// Identical Documents Sequence: (SQ, 1, 1C)    DSRSOPInstanceReferenceList IdenticalDocuments;    //  Referenced Request Sequence: (SQ, 1, 1C)        // -- not yet supported --    /// Performed Procedure Code Sequence: (SQ, 1, 2)    DcmSequenceOfItems  PerformedProcedureCode;    /// Current Requested Procedure Evidence Sequence: (SQ, 1, 1C)    DSRSOPInstanceReferenceList CurrentRequestedProcedureEvidence;    /// Pertinent Other Evidence Sequence: (SQ, 1, 1C)    DSRSOPInstanceReferenceList PertinentOtherEvidence; // --- declaration copy constructor and assignment operator    DSRDocument(const DSRDocument &);    DSRDocument &operator=(const DSRDocument &);};#endif/* *  CVS/RCS Log: *  $Log: dsrdoc.h,v $ *  Revision 1.38  2005/12/08 16:04:59  meichel *  Changed include path schema for all DCMTK header files * *  Revision 1.37  2005/11/30 12:00:24  joergr *  Added support for X-Ray Radiation Dose SR documents. * *  Revision 1.36  2005/07/27 16:41:55  joergr *  Updated reference to DICOM standard edition. * *  Revision 1.35  2004/11/22 16:39:09  meichel *  Added method that checks if the SR document contains non-ASCII characters *    in any of the strings affected by SpecificCharacterSet. * *  Revision 1.34  2004/04/16 13:24:07  joergr *  Restructured code to avoid default parameter values for "complex types" like *  OFString. Required for Sun CC 2.0.1. * *  Revision 1.33  2004/01/05 14:36:02  joergr *  Removed acknowledgements with e-mail addresses from CVS log. * *  Revision 1.32  2003/10/30 17:53:23  joergr *  Added full support for the ContentTemplateSequence (read/write, get/set *  template identification). Template constraints are not checked yet. * *  Revision 1.31  2003/10/09 13:18:16  joergr *  Added text from Supplement 66 to getCurrentRequestedProcedureEvidence() API *  comment. * *  Revision 1.30  2003/09/10 13:16:13  joergr *  Replaced PrivateCodingSchemeUID by new CodingSchemeIdenticationSequence as *  required by CP 324. * *  Revision 1.29  2003/08/07 18:01:42  joergr *  Removed libxml dependency from header files. * *  Revision 1.28  2003/08/07 12:31:46  joergr *  Added readXML functionality. *  Updated documentation to get rid of doxygen warnings. *  Made method isFinalized() const. *  Added new option to createRevisedVersion() which allows to keep the current *  list of predecessor documents. *  Changed interface to access the list of predecessor documents. Now using the *  existing class DSRSOPInstanceReferenceList. *  Added preliminary support for the Identical Documents Sequence. *  Renamed parameters/variables "string" to avoid name clash with STL class. * *  Revision 1.27  2002/05/14 08:15:24  joergr *  Updated comments. * *  Revision 1.26  2002/05/07 12:49:31  joergr *  Added support for the Current Requested Procedure Evidence Sequence and the *  Pertinent Other Evidence Sequence to the dcmsr module. * *  Revision 1.25  2002/04/16 13:50:52  joergr *  Added configurable support for C++ ANSI standard includes (e.g. streams). * *  Revision 1.24  2001/11/09 16:10:48  joergr *  Added preliminary support for Mammography CAD SR. * *  Revision 1.23  2001/09/26 13:04:06  meichel *  Adapted dcmsr to class OFCondition * *  Revision 1.22  2001/04/03 08:24:01  joergr *  Added new command line option: ignore relationship content constraints *  specified for each SR document class. * *  Revision 1.21  2001/01/29 17:37:14  joergr *  Added methods to support a new state of finalized and unfinalized documents. * *  Revision 1.20  2001/01/25 11:48:43  joergr *  Corrected typos / enhanced comments. * *  Revision 1.19  2001/01/18 15:53:33  joergr *  Added support for digital signatures. * *  Revision 1.18  2000/12/08 13:42:40  joergr *  Renamed createNewSeries(studyUID) to createNewSeriesInStudy(studyUID). * *  Revision 1.17  2000/11/16 13:31:27  joergr *  Corrected behaviour of updateDicomAttributes(). * *  Revision 1.16  2000/11/14 17:27:25  joergr *  Added method to remove verification information. * *  Revision 1.15  2000/11/14 16:36:21  joergr *  Added methods to set the content date/time. * *  Revision 1.14  2000/11/14 11:45:50  joergr *  Corrected behaviour of method createRevisedVersion(). * *  Revision 1.13  2000/11/13 14:19:06  joergr *  Updated comments. * *  Revision 1.12  2000/11/13 10:26:21  joergr *  Added output of optional observation datetime to rendered HTML page. * *  Revision 1.11  2000/11/10 18:10:20  joergr *  Corrected behaviour of createNewSOPInstance() and createRevisedDocument(). * *  Revision 1.10  2000/11/10 17:44:49  joergr *  Added new methods to set the completion flag description, create new study/ *  series UIDs. Added missing type 2 sequence to dataset. Corrected wrong format *  of predecessor documents sequence. Changed behaviour of completion/verification *  flags. Improved HTML and print/dump output. * *  Revision 1.9  2000/11/09 20:32:07  joergr *  Added support for non-ASCII characters in HTML 3.2 (use numeric value). * *  Revision 1.8  2000/11/07 18:12:25  joergr *  Enhanced rendered HTML output of date, time, datetime and pname. * *  Revision 1.7  2000/11/01 16:16:33  joergr *  dded support for conversion to XML. *  Added support for Cascading Style Sheet (CSS) used optionally for HTML *  rendering. *  Enhanced support for specific character sets. * *  Revision 1.6  2000/10/26 14:17:06  joergr *  Added support for "Comprehensive SR". * *  Revision 1.5  2000/10/18 17:01:47  joergr *  Made some functions inline. * *  Revision 1.4  2000/10/17 12:35:05  joergr *  Added methods to retrieve information on predecessor documents and *  verifying observers. * *  Revision 1.3  2000/10/16 16:30:23  joergr *  Added missing get/setSeriesDescription() methods. *  Updated comments. * *  Revision 1.2  2000/10/16 11:59:04  joergr *  Made method creating a new SOP instance public. Added check for correct SOP *  instance UID and SOP class UID to validity check. * *  Revision 1.1  2000/10/13 07:49:25  joergr *  Added new module 'dcmsr' providing access to DICOM structured reporting *  documents (supplement 23).  Doc++ documentation not yet completed. * * */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -