Home

MergeCOM-3™ C/C++ DICOM Toolkit Message

image

Contents

1. Also private attributes can be added to items as they were to messages Important Notes Be careful when setting the Value Type VT for private attributes you are addin to the message info profile VT for private attributes should always be 3 meaning the private attribute is optional unless you are defining your own Specialized or Private SOP Class Also once you add private attributes to a message section in the message info file the toolkit will reserve the private block of attributes even if your application does not fill these attributes in with values This means the private creator codes will be a part of the message stream If you have optional blocks of private attributes you will probably want to continue to use the MC_Add_Private_ runtime private attribute creation calls 20
2. 18 Example item Adding private attributes to the message Note that both messages contain attributes with VR s of SQ Only in these cases an enumerated value is specified for the attribute that contains the Item Name This Item Name translates to item number in the mergecom srv configuration file as follows ITEM_TABLE NUMBER_OF_ITEMS_ SUPPORTED 42 ADMITTING _DIAGNOSIS_CODE 0001 DISCHARGE_DIAGNOSIS_CODE 0002 INSTITUTION_CODE 0003 PREFORMATTED_COLOR_IMAGE 0008 REF_OVERLAY 0023 The format of the actual item in the message info profile is identical to that for the message object specified above except for the name of the section For example the entry in the message info profile info p f1 for the REF_OVERLAY item is 0023 ITEM 0008 1150 UI 1 0008 1155 UI 1 This allows for nested sequences of items since an attribute of an item can certainly have a VR of SQ Extending the Message Info Profile Extending the message or item objects specified in the message info profile with additional private attributes is a matter of adding private attribute entries to the proper section of the file Use the mergecom srv file to determine the proper section namely e when adding private attributes to a message object look for the service name in the mergecom srv file find its corresponding ServiceNum and look for the section ServiceNum DIMSECommand
3. MergeCOM 3 DICOM Toolkit Message Database Manual Section one contains any additions to standard pre existing messages or items This is where private attributes are usually added to existing services Se SE HE HE This section can be blank if you aren t using it but the line containing the EXISTING keyword must remain as is EXISTING_SERVICE_SECTION BASIC_COLOR_IMAGE_BOX N_SET_RSP 0009 ACME Imaging Group 2A PN 3 0009 ACME Imaging Group 2B DT 3 As is mentioned in the comment block for this section this is section one The start of this section is denoted by the EXISTING_SERVICE_SECTION keyword This keyword must exist in the file and must be formatted exactly as it looks in the above example It must be enclosed in square brackets have a space between the bracket and the keyword and be separated from the section s actual modifications by a blank line All keywords contained within this file must be formatted in this manner The actual modifications are following the keyword delimiter and the blank line The modifications are formatted in the following manner Existing service existing command Private Group Creator Code Element VR VT G For more information regarding the format of the individual modification lines please see the appendix The appendix describes the format of these lines in the section that describes adding private
4. MergeCOM 3 DICOM Toolkit Message Database Manual Copyright 2011 Merge Healthcare Incorporated Unauthorized use reproduction or disclosure is prohibited This document has been prepared by Merge Healthcare Incorporated for its customers The content of this document is confidential It may be reproduced only with written permission from Merge Healthcare Specifications contained herein are subject to change and these changes will be reported in subsequent revisions or editions Merge Healthcare is a registered trademarks of Merge Healthcare Incorporated MergeCOM 3 is a trademark of Merge Healthcare The names of other products mentioned in this document may be the trademarks or registered trademarks of their respective companies Merge Healthcare 6303 Airport Road Suite 500 Mississauga ON Canada L4V 1R8 Tel 1 905 364 8000 Fax 1 905 364 8100 Toll free in North America 1 800 724 5970 For assistance please contact Merge Healthcare Customer Support e In North America call toll free 1 800 668 7990 then select option 2 e International call Merge Healthcare in Canada 1 905 672 7990 then select option 2 e Email mc3support merge com COM 56 Rev 1 0 Contents CONTENTS OVERVIEW Message Dictionary COMPONENMS cceeceeseeeeeeeeseeeeeeeaeeeeneeteaes CONVENTIONS ois nean e aare a a a e a a Eaa aaa Eaei DICTIONARY AND MESSAGE PROFILES USING me3dcomb issie ennaa aaan aeaa aaa iaaa
5. e All entries within a section are in increasing hexadecimal order of Tag Group Element e The at signs and commas present in the string are explicit separators around which no spaces should be placed Private Attribute Specification Private Attributes can also be added to a Message Object SOP by adding them to the correct section Private attributes referenced in the message profile must have also been properly defined in the dictionary profile as described earlier Each private attribute is specified on a separate line as follows MergeCOM 3 DICOM Toolkit Message Database Manual Group Private Code Element Byte VR VT DefOrEnumValues where e Group _must be odd and is the 4 high order hexadecimal digits of the private Attribute Tag e Private Code is the Private Creator code that will be used to identify the block of OxFF 255 private attributes you are reserving within private Group Private Code can be composed of up to 64 alphanumeric characters and the space character e Element Byte is the 2 hexadecimal digits identifying the private attribute within the Private Block identified by Private Code e VR VT and DefOrEnumValues are defined as they were in the case of Standard Attributes above e All private tags within a single Private Block identified by a single Private Code within a section must be grouped together e All entries within a Private Block are in increasin
6. Anatomic Region Modifier Sequence 0008 2220 S0 1 Primary Anatomic Structure Sequence 0008 2228 SQ 1 Primary Anatomic Structure Modifier Sequence 0008 2230 SQ 1 Group 0008 Comments RETIRED 0008 4000 LO 1 N Last Serviced By 0009 ACME Imaging Group 2A PN 1 Last Serviced Date 0009 ACME Imaging Group 2B DT 1 Bold Density Scan Parms 0009 ACME MR Group 00 SS 3 Group 0010 Length 0010 0000 UL 1 Patient s Name 0010 0010 PN 1 Patient ID 0010 0020 L0 1 15 MergeCOM 3 DICOM Toolkit Message Database Manual Issuer of Patient ID 0010 0021 L0 1 Patient s Birth Date 0010 0030 DA 1 Patient s Birth Time 0010 0032 TM 1 Patient s Sex 0010 0040 CS 1 Message Info Profile Specification The message info profile i1nfo pf 1 contains the SOP or Message Object specifications for all the DICOM service command pairs supported by the MergeCOM 3 DICOM Toolkit on the MC_Open_Message and MC_Set_Service_Command calls This profile also contains specifications for each of the Items used in attributes of Value Representation SQ Sequence of Items The message info profile is broken into sections each section beginning with a single line with the format ServiceNum DIMSECommandName for SOPs or ItemNum ITEM for Items where e ServiceNunm is a four digit decimal service number corresponding to a service number defined in the mergecom srv configuration file for a particular DICOM service Leading zeroes are
7. The User s Manual is the foundation for all other documentation because it explains the concepts of DICOM and the DICOM Toolkit Before plunging into the Reference Manual or Sample Application Guides you should be comfortable with the material in the User Manual The Reference Manual is where you go for detailed information on the DICOM Toolkit This includes the Application Programming Interface API toolkit configuration the runtime object database and status logging The Reference Manual also includes a DICOM conformance statement for the toolkit The DICOM Message Database Manual is an optional extension that describes the organization of the MergeCOM 3 DICOM Database and how to use it to extend standard services and define your own private services Tools are supplied for converting the contents of the database into the binary runtime object database The Sample Application Guides describe approaches to developing specific classes of DICOM applications Image Transfer Query Retrieve Print HIS RIS Storage Media etc They highlight pertinent information from Parts 3 or 4 of the DICOM Standard in a more readable way and in the context of the DICOM Toolkit The Application Guides also detail the DICOM messages that can be passed between applications on the network Also a sample application is described and the application supplied in source form for your platform Platform specific information required to use the DICOM Toolkit on
8. USING mie3iCOmD eeii iec a EE Format of mc3icomb s configuration file eeeeeeeeeeeeeeeee Final overview of the process eeccceeeeseeceeeeeeeeeeeeneeeetteeeeeneaa GENERATING THE BINARY DATABASE Dictionary File Generation MC3dICt ceeeeeeeeeeeeeeeeeeeeeeneeeeeeees Message Info File Generation MCBINfO ccccceesseceeeesteeeeeeeaes ACCESSING PRIVATE ATTRIBUTES APPENDIX DICTIONARY PROFILE SPECIFICATIONS Data File Descriptions ee ceeeeeeeeeeeeeeeeeeeeeeeeaeeeeeeaaeeeeeeaeeeeeeaaes Private Attribute Specification ccccccccsecccsssececssaeeeeessaeeeeesaaes Standard Attribute Specification eccccceeeeseeeeeeeeeeeeeeeeeeeeneeeeees Private Attribute Specification ccccccccssecccsssseeecesaeeeeesaeeeeseaaes Example message info profile entry 0 0 0 cceeeeeseeeeeeeneeeeeeneeeeeenaes Extending the Message Info Profile ccccccccceceesesseceeeeeeeeeenees 12 14 14 15 16 17 19 Impacts on DICOM Conformance Overview This manual is targeted toward a special class of advanced developers of DICOM applications using the MergeCOM 3 DICOM Toolkit that wish to e supplement the standard MergeCOM 3 message dictionary with private extensions and e verify these private extensions through the message validation functionality provided by MergeCOM 3 DICOM Toolkit MergeCOM 3 DICOM Toolkit supports the addition of private attributes at r
9. attributes to a message object SOP Section two begins after the section one modifications are placed in the config file The file contains a comment block describing the second section of the file The comment block is followed by another delimiter The delimiter is PRIVATE_SERVICE_SECTION Section two contains any private services which are going to be created As with section one this section can remain empty but the PRIVATE_SERVICE_SECTION keyword must also remain exactly as listed below PRIVATE_SERVICE_SECTION BASIC_DUMMY_MANAGEMENT MESSAGE UID 123 456 DESCRIPTION Basic dummy management TYPE BASE BASIC_DUMMY_MANAGEMENT N_SET_RQ 2030 0010 US 1 2030 0020 LO 3 BASIC_DUMMY_MANAGEMENT N_SET_RSP 2030 0010 US 1 2030 0O0O20 LO 1EG Each newly added service is formatted like the example above Each service is delimited from the others by having its name contained within a delimiter In the example above this name is BASIC_DUMMY_MANAGEMENT As you can see this service name corresponds to the definitions for each of this service s commands below The service itself must have its UID Description and Type defined This is defined in the heading section Following the service s definition the message s command and the tags that make up the command are entered It is important to note th
10. dictionary as specified in Part 6 of the DICOM Standard This includes all the standard attributes their tags names value multiplicities VM s and value representations VR s A utility called mc3dict is used to create this binary dictionary file on a specific platform from an ASCII input file usually named diction pf1 The ASCII input profile is platform independent and developers can modify diction pf1 or create their own dictionary profile and run them through mc3dict to generate a customized mrgcom3 dct Creating The The binary message info file has the name mrgcom3 msg and contains a binary Message Info Files coded representation of DICOM Service Object Pairs SOP s These SOP s specify the attributes contained in the data dictionary that make up a message or item their value type VT and any enumerated values or defined terms Items that are used in attributes of VR Sequence of Item SQ are also specified in message info file A utility called mc3info is used to create this binary message info file on a specific platform from a single ASCII input file usually named info pfl Figure 3 represents this conversion process for both the data dictionary and message profiles ASCII Text Files Conversion Executables Message Dictionary Binary Files platform platform specific independent Figure 3 ASCII to Binary Message Dictionary Conversion Process MergeCOM 3 DICOM Toolkit also supports a gendict utility
11. with the toolkit while the other could contain all of the enhancements needed for a specific application of the toolkit This utility could also be used multiple times to combine many different change files into a single file that would then be merged with the existing diction pf1 file It is stipulated that the input files used by mc3dcomb be formatted just like diction pfl Given that both files then need to be sorted in ascending attribute order That is the order in each particular file must be ascending but there doesn t need to be any correlation in order between the two files The appendix should be consulted in order to see the format of diction pfl files The usage for mc3dcomb is the following mc3dcomb lt diction pfl gt lt input_file gt lt output_file gt Using mc3icomb The mc3icomb utility functions differently than does mc3dcomb in that it must do more processing on input files mc3icomb must read in its configuration file which contains the changes that a user wishes to make read in the existing mergecom srv and read in the existing info pfl It must then merge all of this data into the proper format for the two files which it will output As with mc3dcomb mc3icomb can be used on multiple files multiple times This enables the user to use the output of one pass or run of mc3icomb as the input for another pass of mc3icomb mcsicomb uses the following types of files for input mergecom srv info pfl conf
12. Name where DIMSECommandName is the DIMSE command for which you wish to add the attributes e when adding private attributes to an item object look for the item name in the mergecom srv file find its corresponding ItemNum and find the section labeled ItemNum ITEM Once finding the proper section add a validly formatted entry for your new private attribute with all the required parameters Be sure that the attribute s Tag has a corresponding entry in the data dictionary profile Also be certain that the new attribute is added in Tag order A couple of the private attributes we defined earlier in the dictionary profile could be added to the N_SET_RSP entry above as follows private attributes are in boldface 0002 N_SET_RO MergeCOM 3 DICOM Toolkit Message Database Manual 2010 0O060 CS 3 D lt REPLICATE BILINEAR CUBIC NONE gt 2010 0080 CS 3 G 2020 0010 US 1 G 2020 0020 CS 3 E lt NORMAL REVERSE gt 2020 0030 DS 3 G 2020 0111 SQ 1 E lt PREFORMATTED_COLOR_IMAGE gt 2020 0130 SQ 3 E lt REF_OVERLAY gt 0002 N_SET_RSP 0009 ACME Imaging Group 2A PN 3 0009 ACME Imaging Group 2B DT 3 2010 0O060 CS 3 D lt REPLICATE BILINEAR CUBIC NONE gt 2010 0O080 CS 3 G 2020 0010 US 1 G 2020 0020 CS 1 E lt NORMAL REVERSE gt 2020 0030 DS 3 G 2020 0111 SQ 1 E lt PREFORMATTED_COLOR_IMAGE gt 2020 0130 SQ 1C OVERLAY_SOP_NEGOTIATED E lt REF_OVERLAY gt
13. SET_RSP Service 0002 Command N_SET_RQ Service 0002 Command N_SET_RSP Service 0003 Command N_CREATE_ROQ Service 0003 Command N_CREATE_RSP Service 0003 Command N_SET_ROQ Service 0003 Command N_SET_RSP Service 0003 Command N_DE E ROn Service 0003 Command N_DELETE_RSP Service 0003 Command N_ACTION_ROQ Service 0003 Command N_ACTION_RSP Service 0004 Command N_CREATE_ROQ Service 0004 Command N_CREATE_RSP Service 0004 Command N_SET_RQ Service 0004 Command N_SET_RSP Service 0004 Command N_DE B RO Service 0004 Command N_DELETE_RSP Service 0004 Command N_ACTION_ROQ Service 0004 Command N_ACTION_RSP Service 0005 Command N_SET_ROQ Service 0005 Command N_SET_RSP Service 0006 Command N_GET_ROQ Service 0006 Command N_GET_RSP ERROR Invalid Input File format in line number 183 The output file created is the binary message info files mrgcom3 msg For the binary info file to be accessed properly at runtime the mergecom pro configuration file for the toolkit must point to the location of the MSG_INFO_FILE inthe MESSAGE_PARMS section See the discussion of toolkit configuration in the User s Manual for further details Accessing Private Attributes Benefits for the Once private attributes have been added to the binary dictionary file three things implementor occur
14. adecimal digits of the Attribute Tag e Element is the 4 low order hexadecimal digits of the Attribute Tag e VR is the two uppercase character representation of the Value Representation It must have one of the values from the set AE AS CS DA DS DT IS LO LT PN SH ST TM UT UI SS US AT SL UL FL FD UNKNOWN_VR OB OW OL OF SQ e vMis the Value Multiplicity string for the attribute and must have a value from the set 1 1 N N K or 1 k where kis a positive integer greater than 1 e All entries are in increasing hexadecimal order of Tag Group Element and should NOT contain spaces around the commas in the string Example from An excerpt from Merge s standard DICOM dictionary profile is as follows dictionary profile Transducer Orientation 0008 2204 CS 1 Anatomic Structure 0008 2208 CS 1 Anatomic Region Sequence 0008 2218 SQ 1 Anatomic Region Modifier Sequence 0008 2220 SQ 1 Primary Anatomic Structure Sequence 0008 2228 S0 1 Primary Anatomic Structure Modifier Sequence 0008 2230 S0 1 Group 0008 Comments RETIRED 0008 4000 LO 1 N Group 0010 Length 0010 0000 UL 1 Patient s Name 0010 0010 PN 1 Patient ID 0010 0020 L0 1 Issuer of Patient ID 0010 0021 L0 1 Patient s Birth Date 0010 0030 DA 1 Patient s Birth Time 0010 0032 TM 1 Patient s Sex 0010 0040 CS 1 Private Attribute Specification Private attributes can be added to the
15. and Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command Command RO RSP ss RO RSP DWE ARE ATE_ROQ A E_RSP 4 ot E E_RQ B RSP RO TON RSP pa EATE_RQ DHWAAE EATE_RSP dee E_RQ la ie TETE 22223 z2Z 222Z Z222 ZZZ ZZZzzz ANPPUTIONHNAAPPUVUVUUHUANHRAANNHHN Eb E B RSP RO TION_RSP EL_RQ EFATE_RQ EATE_RSP E_RQ E_RSP 11 MergeCOM 3 DICOM Toolkit Message Database Manual This output shows the normal processing of the message info profile containing some 160 messages over 42 services and an additional 89 items mc3info also has limited error detection If it finds an input line with an invalid format it will alert the operator as follows mc3info Generate MergeCOM 3 Binary ssage Object Files Version 2 Copyright c 1995 Merge Technologies Inc Generating info files for Service 0001 Command N_SET_RQ Service 0001 Command N_
16. at the tags that each command contains can be either private or standard It is important to note that the lines that specify these are also defined in the appendix The example above only shows standard attributes Once the new private services and commands are created the configuration file includes a description for section three There is also a delimiter that denotes the start of section three PRIVATE_ITEM_SECTION As with other delimiters it must be followed by a blank line and properly formatted Section three contains any private items which are to be created This section holds the complete definition of any private items As with the other sections this can remain empty but the PRIVATE_I keyword line must remain exactly as listed below PRIVATE_ITEM_SECTION As shown in the comment above section three contains the additions for private items Each private item starts with the definition of the private item s name and is followed by the item s tag contents DUMMY_ITEM ITEM 0008 1150 UI 1 0008 1155 UI 1 As with other sections section four starts with a delimiter EXISTING_ITEM_SECTION This delimiter denotes the start of additions to existing items Section four contains modifications to any existing standard items which are to be added to As with the other sections this one can also remain empty but the STANDARD ITM keyword must remain exact
17. c memory and is easier to reconfigure does not require rebuilding executables But in embedded systems where a file system is not available statically linking in the Data Dictionary file allows attribute level but not message level validation without requiring a file system The MergeCOM 3 DICOM Toolkit configuration files can also be statically linked into to your executable Your application specifies how it wishes to access the dictionary and configuration files using the MC_Library_Initialization call See the Reference Manual for further details Merge may add the ability to statically link in message info files in the future but at present the memory cost associated with this approach makes its appeal limited It is most often the case at least in embedded environments that Read Me FIRST Sample Applications development and test are done with a file system allowing for message info files and message level validation is not done in the final production environment Normally the library uses the binary files and object files shipped with the toolkit It is also possible for advanced developers to extend or specify their own private data dictionary and message info files This document outlines the structure of the toolkit dictionary and message info files and describes the use of utilities needed to generate new binary dictionary files The MergeCOM 3 DICOM Toolkit documentation is structured as pictured in Figure 2
18. dictionary profile by adding new entries formatted one entry per line as follows Attribute Name Group Private Code Element Byte VR VM where e Attribute Name is the name of the Private Attribute and consists of Alphanumeric characters and the space character e Group must be odd and is the 4 high order hexadecimal digits of the private Attribute Tag e Private Code is the Private Creator code that will be used to identify the block of OxFF 255 private attributes you are reserving within private Group Private Code can be composed of up to 64 alphanumeric characters and the space character For Private Codes of any length a trailing space should NOT be added e Element Byte is the 2 hexadecimal digits identifying the private attribute within the Private Block identified by Private Code e VR and VM are defined as in the case of Standard Attributes above e All private tags within a single Private Block identified by a single Private Code must be grouped together e All entries within a Private Block are in increasing hexadecimal order of Tag Group Element Byte e There should NOT be any spaces placed around the commas in the string An excerpt from Merge s standard DICOM dictionary profile with additional private attributes follows private attributes are in boldface Transducer Orientation 0008 2204 CS 1 Anatomic Structure 0008 2208 CS 1 Anatomic Region Sequence 0008 2218 SQ 1
19. e the same private attributes can be referenced in the message info file e private attributes in the binary dictionary file but not part of a message object can be added to a message object using the MC_Add_Private_Attribute call No MC_Add_Private_Block callis necessary for private attributes that have been added to the dictionary file This is consistent with how MC_Add_Standard_Attribute already works e when messages are received over the network or read in from media if the private attributes contained in that message are defined in your dictionary they will be added to the message with a known VR and VM They will also properly appear in the output of MC_List_Message 12 Once private attributes have been added to a section of the message info file three things occur private attribute can be assigned values using the MC_Set_pValue_ functions No MC_Add_Private_Block or MC_Add_Private_Attribute calls are necessary fora private attributes that have been added to binary message info file when messages are received over the network or read in from media if the private attributes contained in that message are defined in your corresponding message info file they will be added to the message with a known VT and Defined Terms or Enumerated Values if specified They will also properly appear in the output of MC_List_Message when MC_Validate_Message _ is called the private attributes will also be
20. g hexadecimal order of Tag Group Element Byte e The at signs and commas present in the string are explicit separators around which no spaces should be placed Example message info profile entry Looking at the BASTC_COLOR_IMAGE_BOxX service as an example we see the following entry for this service in the mergecom srv configuration file 0002 NAME BASIC_COLOR_IMAGE_BOX UID 1 2 840 10008 5 1 1 4 1 TYPE BASE COMMAND_1 N_SET_RQ COMMAND_2 N_SET_RSP Example from This service has ServiceNum 0002 and supports the DIMSECommandName s message info N_SET_RQ and N_SET_RSP The corresponding entries in the message profile profile info pf1 look like the following 0002 N_SET_RQ 2010 0O060 CS 3 D lt REPLICATE BILINEAR CUBIC NONE gt 2010 0080 CSE3CG 2020 0010 US 1 2020 0020 CS 3 E lt NORMAL REVERSE gt 2020 0030 DSE3CE 2020 0111 SQ 1 2020 0130 SQ 3 0002 N_SET_RS 2010 0060 CSE3CE 2010 0080 CSE3CG REFORMATTED _COLOR_IMAGE gt EF_OVERLAY gt U Dow g EPLICATE BILINEAR CUBIC NONE gt 2020 0010 US 1 2020 0020 CS 1 2020 0030 DSE 3 2020 0111 SQ 1 2020 0130 SQ 1C E lt NORMAL REVERSE gt E lt PREFORMATTED_COLOR_IMAGE gt OVERLAY _SOP_NEGOTIATED E lt REF_OVERLAY gt
21. he terminology being used here is confusing you need to read and understand the other MergeCOM 3 DICOM Toolkit User Manual and refer to the DICOM Standard itself before continuing on with this manual See the Documentation Roadmap section below Message Dictionary Components When the MergeCOM 3 DICOM Toolkit validates a message through the MC_Validate_Message _ call it accesses several binary dictionary files These binary files are accessed during runtime via the file system One of these files the DICOM Data Dictionary file can also be kept in memory or statically linked into your application as an object module See Figure 1 MergeCOM 3 DICOM Toolkit Message Database Manual other sample applications e Vane Media App lr Q R App Sample Store App o ASCII files or linked DICOM ee Sean S ini essage Info into library header files header files ie x and executable Data Config Files Dictiona MERGE INI MergeCOM 3 Advanced MERGECOM PRO Library 7 P MERGECOM APP inary iles MERGECOM SRV or linked into executable TCP IP File System Sockets YX AN Interchangeable Media Device DICOM Network Key Merge Components Your Components DICOM Database Maintenance Tools Figure 1 MergeCOM 3 DICOM Toolkit with Merge Healthcare Components Highlighted For most applications accessing the binary files is preferred because this requires less stati
22. ig The mergecom srv file can be the mergecom srv file that was shipped with the toolkit It can be any file that is formatted and contains information for a mergecom srv file The info pf1 file can be the info pf1 file that was shipped with the toolkit It can be any file that is formatted and contains information for an info pf1 file The config file is a file which contains information that the user wishes to add to a set of existing info pfl and mergecom srv files The format of the config file is specific to this type of file and will be detailed later mc3icomb creates the following output files mergecom srv info pfl The two output files contain all of the changes specified within the config input file Format of mc3icomb s configuration file An example mc3icomb configuration file is shipped with the toolkit It is also reproduced in its entirety here Each section s functionality will be discussed after it is enumerated This is an example of the configuration file that is used by mc3icomb to modify a mergecom srv and info pfl file This file contains three sections Each section must be formatted properly in order for mc3icomb to parse it correctly The following are examples of how each section should be constructed The above block is nothing more than a comment block that describes the purpose of the file As can be seen by this example comments are lines that start with the character
23. lue type for the attribute and must have a value from the set of values 1 1C ConditionString 2 2C ConditionString 3 where ConditionString is a string representing a condition specified in the DICOM standard for a conditional attribute ConditionString shall only consist of uppercase characters and the underbar character Note The Toolkit only validates against conditions that it can validate itself It is the DICOM application s responsibility to validate all other conditions e DefOrEnumValues for single valued elements VM of 1 is a string containing defined terms or enumerated values of the form o D lt valuet value2 valuen gt or E lt value1 value2 valuen gt e Where D specifies defined terms E specifies enumerated values and valuek where k is between 1 and n specifies a term or value respectively For multiple valued elements VM greater than 1 having a value multiplicity of n e each valuek can itself have one of many values In this case DefOrEnumValues has the following different form D lt value1 value1 value1 value2 value2 value2 valuen valuens valuen or E lt value1 value1 value1 value2 value2o value2 valuen valuens valuen e where D specifies defined terms E specifies enumerated values and each parenthesized list specifies the acceptable terms or values for the kth value of that multiple valued element respectively
24. ly as listed below EXISTING_ITEM_SECTION Section four definitions match the format of section three In this case the item s name must already exist in the input database If the item does not exist an error is logged PREFORMATTED_COLOR_IMAGE ITEM 0008 2222QUIG1 0008 3333 UI 1 Note that the tags listed in this definition are added to an existing item s definition These can also be either private or existing Once both mc3icomb and mc3dcomb have been used to generate new configuration files the user can continue with the generation of the binary database files This is discussed in the next section and is no different had the user modified the configuration files by hand MergeCOM 3 DICOM Toolkit Message Database Manua The usage for mc3icomb is as follows mc3icomb lt mergecom srv gt lt info pfl gt lt input_file gt lt output srv gt lt output pfl gt Final overview of the process As can be seen by the above descriptions modifying the data dictionary for the MergeCOM 3 DICOM Toolkit can be accomplished in the following manner 1 Generate the configuration files for use with mc3icomb and mc3dcomb These files contain the actual additions changes to the database 2 Generate the final set of database files that you wish to use with the toolkit This involves using mc3icomb and mc3dcomb with your configuration files and the original ASCII database files
25. program that converts the binary dictionary file into a source code module that can be compiled and linked into your application Documentation of this conversion process can be found in the Toolkit Reference Manual The remainder of this document describes two utility programs mc3dcomb and mc3icomb These two utility programs along with the existing mergecom srv diction pfl and info pf1 files are used to perform custom modifications to the dictionary and message databases MergeCOM 3 DICOM Toolkit Message Database Manual It is important to understand the layout of the pf1 files before attempting to use the two combine utilities This document also provides an appendix which describes the manual process of extending the database by directly manipulating the mergecom srv info pfl and diction pf1 files While Merge recommends that the combine utilities be used to perform dictionary changes rather than manually changing the mergecom srv info pfl and diction pf1 it may be helpful to understand the layout of these files and how the toolkit makes use of them Input Files Conversion Output Files Utilities j info pil I I I megecomsIry 3 B Figure 4 Input files and output files for the dictionary utility programs Using mc3dcomb The mc3dcomb utility is used to merge the contents of two diction pf1 files together One of the two files could be the included diction pf1 file that ships
26. required where necessary e DIMSECommandName is one set of DIMSE commands C_STORE_RQ C_STORE_RSP C_GET_RQ C_GET_RSP C_FIND_RQ C_FIND_RSP C_MOVE_RQ C_MOVE_RSP C_ECHO_RQ C_ECHO_RSP N_EVENT_REPORT_RQ N_EVENT_REPORT_RSP N_GET_RQ N_GET_RSP N_SET_RQ N_SET_RSP N_ACTION_ N_ACTION_RSP N_CREATE_RQ N_CREATE_RSP N_DELETE_RQ N_DELETE_RSP C_CANCEL_RQ e ItemNum is a four digit decimal item number corresponding to an item number defined in the mergecom srv configuration file Leading zeroes are required where necessary e ITEM is the explicit string ITEM Standard Attribute Specification Within each section are specified the standard DICOM attributes that make up the Message or Item Object Each attribute is specified on a separate line as follows Group Element VR VT DefOrEnumValues where e Group is the 4 high order hexadecimal digits of the Attribute Tag e Element is the 4 low order hexadecimal digits of the Attribute Tag e VR is the two uppercase character representation of the Value Representation VR It must have one of the values from the set AE AS CS DA DS DT IS LO LT PN SH ST TM UT UI SS US AT SL UL FL FD UNKNOWN_VR OB OW OL SQ and shall agree with the VR specified for this same Tag in the dictionary profile Note The VR appears in both the dictionary and message info profile for performance reasons e VT is the va
27. shipped with the toolkit 3 Use mc3dict and mc3info to generate a new set of binary dictionary files used by the toolkit Generating the Binary Database Once the dictionary and message info profiles are in the correct format they can be translated to a binary format using the mc3dict and mc3info executables respectively Dictionary File Generation mc3dict Creating the binary dictionary file is a matter of running the mc3dict application specifying a single parameter which is the dictionary profile In the usual case where the dictionary profile is named diction pf1 the output of mc3dict looks like the following mc3dict Generate MergeCOM 3 Binary Dictionary File Version 2 Copyright c 1995 Merge Technologies Inc Number of Data Elements processed 100 200 300 400 500 600 700 800 804 DONE This output shows the normal processing of a dictionary profile containing 804 entries mc3dict also has limited error detection If it finds an input line with an invalid format it will alert the operator as follows mc3dict Generate MergeCOM 3 Binary Dictionary File Version 2 Copyright c 1995 Merge Technologies Inc Number of Data Elements processed ERROR Invalid Input File format in line number 17 The output file created is always the binary dictionary file mrgcom3 dct For the binary dictionary to be accessed properly at runtime the mergecom pro configuration file for the toolkit m
28. untime through the use of the MC_Add_Private_Block and MC_Add_Private_Attribute calls This method is sufficient for most toolkit users where private attributes are encoded or accessed in a limited manner But for more advanced user s e g OEM customers that maintain large groups of private attributes across product lines it is desirable to maintain these private attributes in the MergeCOM 3 DICOM Toolkit Dictionary Files Advantages of this include e ability to maintain Private Dictionary extensions on site under appropriate source code control e ability to create product specific message dictionaries e avoiding the overhead of MC_Add_Private_ calls before using private attributes e More built in knowledge about your own private attributes that are streamed in from DICOM messages over the network or from media e Ability to validate your message objects against private extensions using the existing MC_Validate_Message call When adding Private Attributes to a standard DICOM message object SOP Class you are creating a Standard Extended Specialized or Private SOP Class depending on the rules you follow Part 2 of the Standard details these rules and how each of these types of SOP classes effect conformance Part 2 also explains how to document these extensions within your DICOM Conformance Statement Be sure to read and understand Part 2 of DICOM before adding Private Attributes to DICOM messages If t
29. ust point to the location of the DICTIONARY_FILE inthe MESSAGE_PARMS section See the discussion of toolkit configuration in the User s Manual for further details Message Info File Generation mc3info Creating the binary message info files involves running the mc3info application specifying a single parameter which is the message info profile In the usual case where the message info profile is named info pf1 the output of mc3info looks like the following mc3info Generat Version 2 MergeCOM 3 Binary Message Object Files Copyright c 1995 Merge Technologies Inc Generating info files for 001 001 002 002 003 003 003 003 003 003 003 003 Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Service Item 000 tem 000 tem tem 000 tem 000 A O oO HHHH HHHHHHHHHH DONE 0 OOOO OOOO OOO ORO ORO ORO ORO oe E od OPWNHNrFRFDWOOOVDVVVVCOO 004 004 004 004 004 004 004 004 yyy SY ta 005 005 04 04 04 04 04 04 04 04 04 NNNNNNFEE ee nns tem 0080 tem 0081 tem 0082 tem 0083 tem 0084 tem 0085 tem 0086 tem 0087 tem 0088 tem 0089 Command Comm
30. validated against the specified parameters in the corresponding message info file MergeCOM 3 DICOM Toolkit Message Database Manual Appendix Dictionary Profile Specifications This appendix describes how to modify the data dictionary manually It is provided as a reference for users that have a desire to perform this modification themselves rather than using the included utilities to do it Merge recommends performing all modifications through the use of the mc3icomb and mc3dcomb utilities however This appendix also provides important information on the format of Merge s database files Some of this information is important to users of the mc3icomb and mc3dcomb utilities Since both modification utilities rely on the formats of diction pfl info pfl and mergecom srv itis important to understand how these files are formatted Also the modification utilities rely on these formats within their respective configuration files A user using the modification utilities must be proficient in these file formats for the utilities to be useful Data File Descriptions The dictionary profile dict ion pf1 contains the DICOM Standard Data Dictionary specified in Part 6 of the DICOM Standard and is formatted one entry per line as follows Attribute Name Group Element VR VM where e Attribute Name is the name of the DICOM Attribute and consists of Alphanumeric characters and the space character e Group is the 4 high order hex
31. your target platform are specified in Platform Notes This includes supported compilers compiler options link options configuration and run time related issues MergeCOM 3 DICOM Toolkit Message Database Manual User s Manual ee Sample Application Guides DICOM Message Database Manual TT TT eT fd Solaris Trix MS aie Platform DOS Notes Figure 2 MergeCOM 3 DICOM Toolkit Documentation Roadmap Reference Manual Conventions This manual follows a few formatting conventions Terms that are being defined are presented in boldface Sample Margin Note Margin notes in the left margin are used to highlight important points or sections of the document Sample commands appear in bold courier font while sample output source code and function calls appear in standard courier font Hexadecimal numbers are written with a trailing H For example 16 decimal is equivalent to 10H hexadecimal Performance Portions of the document that can relate directly to the performance of your Tuning application are marked with the special margin note Performance Tuning Dictionary and Message Profiles In Figure 1 we detailed the operation of the MergeCOM 3 DICOM Toolkit and how it references binary dictionary and message info files or objects to perform runtime message validation Creating The The binary data dictionary file is named mrgcom3 dct and contains a binary Dictionary File coded representation of the DICOM data

Download Pdf Manuals

image

Related Search

Related Contents

Manuel de l`utilisateur  Quick Start Guide  Infotainment MY14  SNL Memohead (blue tbird w/o macro)  RL15-JEC6(PPD)  端末安心サポート利用規約  psc manutenzione rete idrica  RICOH LENS Instruction Manual  302563  HDDD A2 v1.2 User`s Manual  

Copyright © All rights reserved.
Failed to retrieve file