The DICOM Communication Protocol outlines the requirements for transferring DICOM data and messages across an associated network connection. For more information about the DICOM Communication Protocol, refer to LEADTOOLS DICOM Network Communication Support for Message Exchange, or the DICOM Standard.
In order to transfer DICOM data and messages from one Application Entity (AE) to another, a network connection must be established. Once this connection has been established, the connection must be associated (also referred to as establishing an Associate connection). When the Associate connection has been established, then DICOM data and messages can be transferred between AEs.
AEs can have the role of Service Class Provider (SCP), Service Class User (SCU), or both. An SCU makes requests for data or services, and may also receive data. An SCP listens for incoming connection requests from SCUs. Once these connections are established (and an associate connection created), the SCP processes requests and provides data or services requested by SCUs.
In this documentation the basic network connection will be referred to as a DICOM Network connection or a DICOM Network. Information concerning a DICOM Network connection will be maintained in and accessed through a DICOM Network object.
When creating either an SCU or an SCP application, a DICOM Network connection (a DICOM network object) must be created. In addition, for every connection request accepted by an SCP, the SCP must create a DICOM Network object in which to maintain information about that specific SCU-SCP connection.
LEADTOOLS provides a number of functions for creating and initializing a DICOM Network and for transferring DICOM data and messages.
To create a DICOM Network connection, use the following functions:
To configure the DICOM Network connection socket options, use the following functions:
LDicomNet::GetDefaultSocketOptions
When a DICOM Network connection is no longer needed, it should be closed. The following functions may be used in closing the DICOM Network connection:
LEADTOOLS provides functions for sending DICOM messages. These include both low-level and high-level functions. The message sending functions can be divided into two groups.
For sending DICOM Connection messages, including messages used in establishing a DICOM Associate connection, use the following:
LDicomNet::SendAssociateRequest
LDicomNet::SendAssociateAccept
LDicomNet::SendAssociateReject
LDicomNet::SendReleaseResponse
LDicomNet::OnReceiveAssociateRequest
LDicomNet::OnReceiveAssociateAccept
LDicomNet::OnReceiveAssociateReject
LDicomNet::OnReceiveReleaseRequest
LDicomNet::OnReceiveReleaseResponse
For sending data messages, LEADTOOLS provides the following functions:
LDicomNet::SendNReportResponse
LDicomNet::SendNActionResponse
LDicomNet::SendNCreateResponse
LDicomNet::SendNDeleteResponse
LDicomNet::OnReceiveCStoreRequest
LDicomNet::OnReceiveCStoreResponse
LDicomNet::OnReceiveCFindRequest
LDicomNet::OnReceiveCFindResponse
LDicomNet::OnReceiveCGetRequest
LDicomNet::OnReceiveCGetResponse
LDicomNet::OnReceiveCMoveRequest
LDicomNet::OnReceiveCMoveResponse
LDicomNet::OnReceiveCCancelRequest
LDicomNet::OnReceiveCEchoRequest
LDicomNet::OnReceiveCEchoResponse
LDicomNet::OnReceiveNReportRequest
LDicomNet::OnReceiveNReportResponse
LDicomNet::OnReceiveNGetRequest
LDicomNet::OnReceiveNGetResponse
LDicomNet::OnReceiveNSetRequest
LDicomNet::OnReceiveNSetResponse
LDicomNet::OnReceiveNActionRequest
LDicomNet::OnReceiveNActionResponse
LDicomNet::OnReceiveNCreateRequest
LDicomNet::OnReceiveNCreateResponse
LDicomNet::OnReceiveNDeleteRequest
LDicomNet::OnReceiveNDeleteResponse
Finally, you can retrieve information about a DICOM Network connection using these functions:
For more information about the DICOM Associate connection, refer to Working with DICOM Associate Connections.
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document