RECEIVECFINDRESPONSECALLBACK
#include "ltdic.h"
L_VOID pEXT_CALLBACK Your Function(hNet, nPresentationID, nMessageID, pszClass, nStatus, hDS, pUserData)
HDICOMNET hNet; |
/* a DICOM Network handle */ |
L_UCHAR nPresentationID; |
/* presentation ID */ |
L_UINT16 nMessageID; |
/* message ID */ |
L_TCHAR * pszClass; |
/* class type */ |
L_UINT16 nStatus; |
/* status of the request */ |
HDICOMDS hDS; |
/* data set */ |
L_VOID * pUserData; |
/* pointer to additional data */ |
Notifies a connection that a C-FIND-RSP command was received. This function is available in the Medical Suite Toolkit.
Parameter |
Description |
hNet |
A DICOM Network handle. |
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. |
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. |
pszClass |
Class affected by the request. This will be an SOP Class or an SOP MetaClass. |
nStatus |
The status of the original request. For a list of possible values, refer to Status Constants. |
hDS |
Pointer to the data set that contains the information found as a result of the call to L_DicomSendCFindRequest. |
pUserData |
Void pointer that you can use to access a variable or structure containing data that your callback function needs. This gives you a way to receive data indirectly from the function that uses this callback function. |
|
Keep in mind that this is a void pointer, which must be cast to the appropriate data type within your callback function. |
Returns
None.
Comments
A call to this function is generated on an SCU when L_DicomSendCFindResponse is called by the SCP.
To use this callback function, RECEIVECFINDRESPONSECALLBACK must be set using L_DicomSetCallback.
Required DLLs and Libraries
LTDIC For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application |
See Also
Functions: |
L_DicomSendCFindRequest, L_DicomSendCFindResponse, RECEIVECFINDREQUESTCALLBACK |
Topics: |
Example
static HWND hList; /* handle to list box */ static HWND hStudyList; /* handle to list box */ static HDICOMNET hNet; static L_INT gnFindType; static L_INT gnFindCount; #define FIND_TYPE_STUDY 1 #define FIND_TYPE_SERIES 2 #define FIND_TYPE_IMAGE 3 L_VOID EXT_CALLBACK OnReceiveCFindResponse(HDICOMNET hNet, L_UCHAR nPresentationID, L_UINT16 nMessageID, L_TCHAR *pszClass, L_UINT16 nStatus, HDICOMDS hDS, L_VOID *pUserData) { UNREFERENCED_PARAMETER(pUserData); UNREFERENCED_PARAMETER(hNet); L_TCHAR szMsg[800]; L_TCHAR szFile[L_MAXPATH]; L_INT nRet; ListBox_AddString(hList, TEXT("Command Set - C-FIND-RESPONSE")); wsprintf(szMsg, TEXT(" Presentation ID: %d"), nPresentationID); ListBox_AddString(hList, szMsg); wsprintf(szMsg, TEXT(" Message ID: %d"), nMessageID); ListBox_AddString(hList, szMsg); wsprintf(szMsg, TEXT(" Affected SOP Class: %s"), pszClass); ListBox_AddString(hList, szMsg); wsprintf(szMsg, TEXT(" Status: %d"), nStatus); ListBox_AddString(hList, szMsg); /* save the data set to disk */ if(hDS != 0) { gnFindCount++; switch(gnFindType) { case FIND_TYPE_STUDY: wsprintf(szFile, TEXT("STUDY_%d.DIC"),gnFindCount); nRet = L_DicomSaveDS(hDS, szFile, 0); ListBox_AddString(hStudyList, szFile); } wsprintf(szMsg, TEXT("Dicom File saved to disk - %s"), szFile); ListBox_AddString(hList, szMsg); } }