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

📄 dcuid.h

📁 转化为DIB位图再显示出来的dicom文件C++代码
💻 H
📖 第 1 页 / 共 3 页
字号:
/* * *  Copyright (C) 1994-2005, OFFIS * *  This software and supporting documentation were developed by * *    Kuratorium OFFIS e.V. *    Healthcare Information and Communication Systems *    Escherweg 2 *    D-26121 Oldenburg, Germany * *  THIS SOFTWARE IS MADE AVAILABLE,  AS IS,  AND OFFIS MAKES NO  WARRANTY *  REGARDING  THE  SOFTWARE,  ITS  PERFORMANCE,  ITS  MERCHANTABILITY  OR *  FITNESS FOR ANY PARTICULAR USE, FREEDOM FROM ANY COMPUTER DISEASES  OR *  ITS CONFORMITY TO ANY SPECIFICATION. THE ENTIRE RISK AS TO QUALITY AND *  PERFORMANCE OF THE SOFTWARE IS WITH THE USER. * *  Module:  dcmdata * *  Author:  Andrew Hewett * *  Purpose: *  Definitions of "well known" DICOM Unique Indentifiers, *  routines for finding and creating UIDs. * *  Last Update:      $Author: meichel $ *  Update Date:      $Date: 2005/12/20 16:24:59 $ *  Source File:      $Source: /share/dicom/cvs-depot/dcmtk/dcmdata/include/dcmtk/dcmdata/dcuid.h,v $ *  CVS/RCS Revision: $Revision: 1.72 $ *  Status:           $State: Exp $ * *  CVS/RCS Log at end of file * */#ifndef DCUID_H#define DCUID_H#include "dcmtk/config/osconfig.h"    /* make sure OS specific configuration is included first */#include "dcmtk/dcmdata/dctypes.h"#define INCLUDE_CSTDLIB#define INCLUDE_UNISTD#include "dcmtk/ofstd/ofstdinc.h"/*** dcmFindNameOfUID(const char* uid)** Return the name of a UID.** Performs a table lookup and returns a pointer to a read-only string.** Returns NULL if the UID is not known.*/const char* dcmFindNameOfUID(const char* uid);//// dcmFindUIDFromName(const char* name)// Return the UID of a name.// Performs a table lookup and returns a pointer to a read-only string.// Returns NULL if the name is not known.//const char* dcmFindUIDFromName(const char * name);/** an array of const strings containing all known Storage SOP Classes *  that fit into the conventional PATIENT-STUDY-SERIES-INSTANCE information *  model, i.e. everything a Storage SCP might want to store in a PACS. *  Special cases such as hanging protocol storage or the Storage SOP Class *  are not included in this list.  *  WARNING: This list contains more than 64 entries, i.e. it is not possible *  to use this list to configure the association negotiation behaviour of *  a Storage SCU that always proposes two presentation contexts for each *  SOP class. */extern const char* dcmAllStorageSOPClassUIDs[];/// number of entries in dcmAllStorageSOPClassUIDs.extern const int numberOfAllDcmStorageSOPClassUIDs;/** an array of const strings containing all storage SOP classes that *  are proposed by default by those Storage SCU components in DCMTK *  that always propose one presentation context for each SOP class, *  e.g. movescu or dcmqrdb. This list is guaranteed to have at most *  120 entries (to leave room for FIND/MOVE presentation contexts). */extern const char* dcmLongSCUStorageSOPClassUIDs[];/// number of entries in dcmLongSCUStorageSOPClassUIDs.extern const int numberOfDcmLongSCUStorageSOPClassUIDs;/** an array of const strings containing all storage SOP classes that *  are proposed by default by those Storage SCU components in DCMTK *  that always propose TWO presentation context for each SOP class, *  e.g. storescu. This list is guaranteed to have at most *  64 entries. */extern const char* dcmShortSCUStorageSOPClassUIDs[];/// number of entries in dcmShortSCUStorageSOPClassUIDs.extern const int numberOfDcmShortSCUStorageSOPClassUIDs;/*** dcmIsaStorageSOPClassUID(const char* uid)** Returns true if the uid is one of the Storage SOP Classes.** Performs a table lookup in the dcmAllStorageSOPClassUIDs table.*/OFBool dcmIsaStorageSOPClassUID(const char* uid);/*** The global variable dcmImageSOPClassUIDs is an array of** string pointers containing the UIDs of all known Image SOP** Classes.  The global variable numberOfDcmImageSOPClassUIDs** defines the size of the array.** NOTE: this list represets a subset of the dcmStorageSOPClassUIDs list*/extern const char* dcmImageSOPClassUIDs[];extern const int numberOfDcmImageSOPClassUIDs;/*** char* generateUniqueIdentifier(char* uid)** Creates a Unique Identifer in uid and returns uid.** uid must be at least 65 bytes. Care is taken to make sure** that the generated UID is 64 characters or less.**** If a prefix string is not passed as the second argument a** default of SITE_INSTANCE_UID_ROOT (see below) will be used.** Otherwise the supplied prefix string will appear at the beginning** of uid.**** The UID is created by appending to the prefix the following:**      the host id (if obtainable, zero otherwise)**      the process id (if obtainable, zero otherwise)**      the system calendar time**      an accumulating counter for this process*/char* dcmGenerateUniqueIdentifier(char* uid, const char* prefix=NULL);/* * dcmSOPClassUIDToModality * performs a table lookup and returns a short modality identifier * that can be used for building file names etc. * Identifiers are defined for all storage SOP classes. * Returns NULL if no modality identifier found or sopClassUID==NULL. */const char *dcmSOPClassUIDToModality(const char *sopClassUID);/* * dcmGuessModalityBytes * performs a table lookup and returns a guessed average * file size for the given SOP class. * Average sizes are defined for all storage SOP classes. */unsigned long dcmGuessModalityBytes(const char *sopClassUID);/*** String Constants*//*** OFFIS UID is: 1.2.276.0.7230010** UID root for OFFIS DCMTK project:   1.2.276.0.7230010.3**          for OFFIS GO-Kard project: 1.2.276.0.7230010.8*//* NOTE: Implementation version name VR=SH may not be longer than 16 chars *       The second name is used to identify files written without dcmdata *       (i.e. using the --bit-preserving switch in various tools) */#define OFFIS_DTK_IMPLEMENTATION_VERSION_NAME   "OFFIS_DCMTK_354"#define OFFIS_DTK_IMPLEMENTATION_VERSION_NAME2  "OFFIS_DCMBP_354"#define OFFIS_DCMTK_RELEASEDATE                 "2005-12-20"#define OFFIS_UID_ROOT                          "1.2.276.0.7230010.3"#define OFFIS_DCMTK_VERSION_NUMBER              354#define OFFIS_DCMTK_VERSION_STRING              "3.5.4"#define OFFIS_DCMTK_VERSION_SUFFIX              ""#define OFFIS_DCMTK_VERSION                     OFFIS_DCMTK_VERSION_STRING OFFIS_DCMTK_VERSION_SUFFIX#define OFFIS_IMPLEMENTATION_CLASS_UID          OFFIS_UID_ROOT ".0." OFFIS_DCMTK_VERSION_STRING#define OFFIS_INSTANCE_CREATOR_UID              OFFIS_IMPLEMENTATION_CLASS_UID#define OFFIS_CODING_SCHEME_UID_ROOT            OFFIS_UID_ROOT ".0.0"#define OFFIS_CODING_SCHEME_VERSION             "1"#define OFFIS_CODING_SCHEME_UID                 OFFIS_CODING_SCHEME_UID_ROOT "." OFFIS_CODING_SCHEME_VERSION/*** Each site should define its own SITE_UID_ROOT*/#ifndef SITE_UID_ROOT#define SITE_UID_ROOT                           OFFIS_UID_ROOT  /* default */#endif/*** Useful UID prefixes. These can be whatever you want.**** These site UIDs are arbitary, non-standard, with no meaning** and can be changed at any time.  Do _not_ rely on these values.** Do _not_ assume any semantics when using these suffixes.***/#define SITE_STUDY_UID_ROOT                     SITE_UID_ROOT ".1.2"#define SITE_SERIES_UID_ROOT                    SITE_UID_ROOT ".1.3"#define SITE_INSTANCE_UID_ROOT                  SITE_UID_ROOT ".1.4"/*** A private SOP Class UID which can be used in a file meta-header when** no real SOP Class is stored in the file. -- NON-STANDARD*/#define UID_PrivateGenericFileSOPClass          SITE_UID_ROOT ".1.0.1"/*** DICOM Defined Standard Application Context UID*/#define UID_StandardApplicationContext          "1.2.840.10008.3.1.1.1"/*** Defined Transfer Syntax UIDs*//* Implicit VR Little Endian: Default Transfer Syntax for DICOM */#define UID_LittleEndianImplicitTransferSyntax  "1.2.840.10008.1.2"/* Explicit VR Little Endian */#define UID_LittleEndianExplicitTransferSyntax  "1.2.840.10008.1.2.1"/* Explicit VR Big Endian */#define UID_BigEndianExplicitTransferSyntax     "1.2.840.10008.1.2.2"/* JPEG Baseline (Process 1): Default Transfer Syntax   for Lossy JPEG 8 Bit Image Compression */#define UID_JPEGProcess1TransferSyntax          "1.2.840.10008.1.2.4.50"/* JPEG Extended (Process 2 & 4): Default Transfer Syntax   for Lossy JPEG 12 Bit Image Compression (Process 4 only) */#define UID_JPEGProcess2_4TransferSyntax        "1.2.840.10008.1.2.4.51"/* JPEG Extended (Process 3 & 5) */#define UID_JPEGProcess3_5TransferSyntax        "1.2.840.10008.1.2.4.52"/* JPEG Spectral Selection, Non-Hierarchical (Process 6 & 8) */#define UID_JPEGProcess6_8TransferSyntax        "1.2.840.10008.1.2.4.53"/* JPEG Spectral Selection, Non-Hierarchical (Process 7 & 9) */#define UID_JPEGProcess7_9TransferSyntax        "1.2.840.10008.1.2.4.54"/* JPEG Full Progression, Non-Hierarchical (Process 10 & 12) */#define UID_JPEGProcess10_12TransferSyntax      "1.2.840.10008.1.2.4.55"/* JPEG Full Progression, Non-Hierarchical (Process 11 & 13) */#define UID_JPEGProcess11_13TransferSyntax      "1.2.840.10008.1.2.4.56"/* JPEG Lossless, Non-Hierarchical (Process 14) */#define UID_JPEGProcess14TransferSyntax         "1.2.840.10008.1.2.4.57"/* JPEG Lossless, Non-Hierarchical (Process 15) */#define UID_JPEGProcess15TransferSyntax         "1.2.840.10008.1.2.4.58"/* JPEG Extended, Hierarchical (Process 16 & 18) */#define UID_JPEGProcess16_18TransferSyntax      "1.2.840.10008.1.2.4.59"/* JPEG Extended, Hierarchical (Process 17 & 19) */#define UID_JPEGProcess17_19TransferSyntax      "1.2.840.10008.1.2.4.60"/* JPEG Spectral Selection, Hierarchical (Process 20 & 22) */#define UID_JPEGProcess20_22TransferSyntax      "1.2.840.10008.1.2.4.61"/* JPEG Spectral Selection, Hierarchical (Process 21 & 23) */#define UID_JPEGProcess21_23TransferSyntax      "1.2.840.10008.1.2.4.62"/* JPEG Full Progression, Hierarchical (Process 24 & 26) */#define UID_JPEGProcess24_26TransferSyntax      "1.2.840.10008.1.2.4.63"/* JPEG Full Progression, Hierarchical (Process 25 & 27) */#define UID_JPEGProcess25_27TransferSyntax      "1.2.840.10008.1.2.4.64"/* JPEG Lossless, Hierarchical (Process 28) */#define UID_JPEGProcess28TransferSyntax         "1.2.840.10008.1.2.4.65"/* JPEG Lossless, Hierarchical (Process 29) */#define UID_JPEGProcess29TransferSyntax         "1.2.840.10008.1.2.4.66"/* JPEG Lossless, Non-Hierarchical, First-Order Prediction (Process 14   [Selection Value 1]): Default Transfer Syntax for Lossless JPEG Image Compression */#define UID_JPEGProcess14SV1TransferSyntax      "1.2.840.10008.1.2.4.70"/* JPEG-LS Lossless Image Compression */#define UID_JPEGLSLosslessTransferSyntax        "1.2.840.10008.1.2.4.80"/* JPEG-LS Lossy (Near-Lossless) Image Compression */#define UID_JPEGLSLossyTransferSyntax           "1.2.840.10008.1.2.4.81"/* RLE Lossless */#define UID_RLELosslessTransferSyntax           "1.2.840.10008.1.2.5"/* Deflated Explicit VR Little Endian */#define UID_DeflatedExplicitVRLittleEndianTransferSyntax "1.2.840.10008.1.2.1.99"/* JPEG 2000 Image Compression (Lossless Only) */#define UID_JPEG2000LosslessOnlyTransferSyntax  "1.2.840.10008.1.2.4.90"/* JPEG 2000 Image Compression (Lossless or Lossy) */#define UID_JPEG2000TransferSyntax              "1.2.840.10008.1.2.4.91"/* MPEG2 Main Profile @ Main Level */

⌨️ 快捷键说明

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