Notifies a connection that data was sent. This function is available in the PACS Imaging Toolkit.
#include "ltdic.h"
virtual L_VOID LDicomNet::OnSend(nError, nType, nBytes)
Error code. Refer to Return Codes.
The type of data that was sent. Possible values are:
Value | Meaning |
---|---|
PDU_UNKNOWN | [0x00] Unknown data sent. |
PDU_ASSOCIATE_REQUEST | [0x01] Associate Request message sent |
PDU_ASSOCIATE_ACCEPT | [0x02] Associate Accept message sent |
PDU_ASSOCIATE_REJECT | [0x03] Associate Reject message sent |
PDU_DATA_TRANSFER | [0x04] Data transfer made. |
PDU_RELEASE_REQUEST | [0x05] Release Request message sent |
PDU_RELEASE_RESPONSE | [0x06] Release Response message sent |
PDU_ABORT | [0x07] Abort message sent. |
Number of bytes of data actually sent.
None.
When one of the LDicomNet::SendXXX functions is called, the message is not sent immediately. It is placed in a Network queue and sent later. When the data is actually sent, this callback function is called to let the calling AE know that the data has been sent.
To customize this function, you must derive a class from LDicomNet and override this function.
Win32, x64
LMyDicomNet is a class derived from LDicomNet
In class LMyDicomNet, all events (virtual functions OnXXX()) have been overridden so that they can be processed. Each event displays a MessageBox identifying the event, the IP that generated the event, the IP that received the event and any other relevant data.
For the entire derived class, see (hyperlink)LMyDicomNet class
//OnSend()
L_VOID LMyDicomNet::OnSend(L_INT nError, L_UCHAR nType, L_UINT32 nBytes)
{
CString strMsg, strTmp, strType;
strMsg = TEXT("*** OnSend ***\n");
strTmp = TEXT("Unknown");
if (nError == DICOM_SUCCESS)
{
switch(nType)
{
case PDU_ASSOCIATE_REQUEST:
strType = TEXT("PDU_ASSOCIATE_REQUEST");
break;
case PDU_ASSOCIATE_ACCEPT:
strType = TEXT("PDU_ASSOCIATE_ACCEPT");
break;
case PDU_ASSOCIATE_REJECT:
strType = TEXT("PDU_ASSOCIATE_REJECT");
break;
case PDU_DATA_TRANSFER:
strType = TEXT("PDU_DATA_TRANSFER");
break;
case PDU_RELEASE_REQUEST:
strType = TEXT("PDU_RELEASE_REQUEST");
break;
case PDU_RELEASE_RESPONSE:
strType = TEXT("PDU_RELEASE_RESPONSE");
break;
case PDU_ABORT:
strType = TEXT("PDU_ABORT");
break;
}
strTmp.Format(TEXT("\nType[%s]\nlSize[%d]"), strType, nBytes);
}
else
{
strTmp.Format(TEXT("Error[%d]\n"),nError);
}
strMsg = strMsg + strTmp;
AfxMessageBox(strMsg);
}
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