LDicomNet::OnReceiveNSetRequest

#include "ltdic.h"

virtual L_VOID LDicomNet::OnReceiveNSetRequest(nPresentationID, nMessageID, pszClass, pszInstance, pDS)

Notifies a connection that an N-SET-REQ command was received. This function is available in the PACS Imaging Toolkit.

Parameters

L_UCHAR nPresentationID

Presentation ID. The presentation ID provides information about both the class type of the data and the transfer syntax to use when transferring the data.

L_UINT16 nMessageID

Message ID. Each message sent by a member of a connection should have a unique ID. Since a member of a connection may send several messages, this ID allows that member to identify when a specific request has been completed.

L_TCHAR * pszClass

Class affected by the request. This will be an SOP Class or an SOP MetaClass.

L_TCHAR * pszInstance

The instance of the class. A server may, for example, have three instances of the Nuclear Medicine Class. This value identifies the data with a specific instance.

LDicomDS *pDS

Data set that contains the new information to set.

Returns

None.

Comments

A call to this function is generated on a peer member of a connection when LDicomNet::SendNSetRequest is called locally.

To customize this function, you must derive a class from LDicomNet and override this function.

Required DLLs and Libraries

Platforms

Win32, x64

See Also

Functions

Topics

Example

In this example:

  1. LMyDicomNet is a class derived from LDicomNet
  2. LMyDicomNet has the following member variables:
    m_nClientOrServer: can be (STATUS_NONE, STATUS_SERVER, STATUS_CLIENT)
    identifies the LMyDicomNet object as a server or a client
    m_nDataCommand: can be (COMMAND_C_MOVE,COMMAND_C_GET)
    set so the server knows how a C-Store Response was generated
  3. m_pDicomNet points to a valid LMyDicomNet object
    LMyDicomNet *m_pDicomNet

  4. A connection exists between client and server

  5. An association exists between the client and server
    L_VOID LMyDicomNet::OnReceiveNSetRequest(L_UCHAR nPresentationID, L_UINT16 nMessageID, L_TCHAR *pszClass, L_TCHAR *pszInstance, LDicomDS *pDS) 
    { 
       CString strMsg; 
       L_UINT lPeerPort; 
       L_TCHAR  szPeerAddress[100]; 
        
       GetPeerInfo(szPeerAddress, 100, 
        &lPeerPort); 
       strMsg.Format(TEXT("*** OnReceiveNSetRequest ***\nPeer[%s]\nnPresentationID[%d]\nnMessageID[%d]\npszClass[%s]\npszInstance[%s]\npDS[%x]\n"),  
          szPeerAddress, 
          nPresentationID,  
          nMessageID,  
          pszClass, 
          pszInstance,  
          pDS); 
        
        
       //... 
       //...The server should change the values of the requested SOP Instance 
       //...to the values specefied in the data set elements in pDS 
       //...This function should search all the managed SOP Instances for a 
       //...match, and then change the requested elements. 
       //... 
       //...nStatus = status of the above--assume DICOM_SUCCESS 
       //... 
        
       L_UINT16 nStatus = COMMAND_STATUS_SUCCESS; 
        
       SendNSetResponse(nPresentationID, nMessageID, pszClass, pszInstance, nStatus, pDS); 
       strMsg += TEXT("SendNSetResponse\n"); 
       AfxMessageBox(strMsg); 
    } 
Help Version 21.0.2021.3.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS DICOM C++ Class Library Help