#include "ltdic.h"
L_LTDIC_API L_VOID L_DicomDelTransfer(hPDU, nID, nIndex)
HDICOMPDU hPDU; |
a DICOM Associate handle |
L_UCHAR nID; |
presentation ID |
L_INT nIndex; |
index |
Deletes a Transfer Syntax from the specified Presentation Context.
Parameter |
Description |
hPDU |
A DICOM Associate handle. |
nID |
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. |
nIndex |
The index of the Transfer Syntax to delete. |
None.
A DICOM Associate (Request or Accept) can have multiple Presentation Contexts. A DICOM Associate Request can have multiple Transfer Syntax entries for each Presentation Context. A Transfer Syntax can be deleted by specifying the ID for the appropriate Presentation Context and the index for the appropriate Transfer Syntax.
Required DLLs and Libraries
For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application |
Win32, x64, Linux.
Functions: |
L_DicomGetTransfer, L_DicomSetTransfer, L_DicomGetTransferCount, L_DicomAddTransfer |
Topics: |
L_INT DicomDelTransferExample(HDICOMPDU hPDU)
{
L_UCHAR i;
L_TCHAR szOut[4000];
L_UCHAR nID ;
L_INT nTransferSyntaxCount;
L_TCHAR szTransfer[PDU_MAX_UID_SIZE+1];
L_INT nRet;
/* display each Transfer Syntax for the first Presentation Context */
lstrcpy(szOut, TEXT("Transfer Syntax"));
nID = L_DicomGetPresentation(hPDU, 0);
nTransferSyntaxCount = L_DicomGetTransferCount(hPDU, nID);
for(i = 0; i<nTransferSyntaxCount; i++)
{
lstrcat(szOut, TEXT("\n"));
L_DicomGetTransfer(hPDU, nID, i, szTransfer, PDU_MAX_UID_SIZE+1);
lstrcat(szOut, szTransfer);
}
MessageBox(NULL, szOut, TEXT("Test"), MB_OK);
/* add a transfer syntax */
nRet = L_DicomAddTransfer(hPDU, nID, UID_IMPLICIT_VR_LITTLE_ENDIAN);
if (nRet != DICOM_SUCCESS)
return nRet;
/* display each Transfer Syntax */
lstrcpy(szOut, TEXT("Transfer Syntax--add a transfer syntax"));
nTransferSyntaxCount = L_DicomGetTransferCount(hPDU, nID);
for(i = 0; i<nTransferSyntaxCount; i++)
{
lstrcat(szOut, TEXT("\n"));
L_DicomGetTransfer(hPDU, nID, i, szTransfer, PDU_MAX_UID_SIZE+1);
lstrcat(szOut, szTransfer);
}
MessageBox(NULL, szOut, TEXT("Test"), MB_OK);
/* change them */
nTransferSyntaxCount = L_DicomGetTransferCount(hPDU, nID);
for(i = 0; i<nTransferSyntaxCount; i++)
{
nRet = L_DicomSetTransfer(hPDU, nID, i, UID_EXPLICIT_VR_BIG_ENDIAN);
if (nRet != DICOM_SUCCESS)
return nRet;
}
/* display each Transfer Syntax */
lstrcpy(szOut, TEXT("Transfer Syntax--add a transfer syntax"));
nTransferSyntaxCount = L_DicomGetTransferCount(hPDU, nID);
for(i = 0; i<nTransferSyntaxCount; i++)
{
lstrcat(szOut, TEXT("\n"));
L_DicomGetTransfer(hPDU, nID, i, szTransfer, PDU_MAX_UID_SIZE+1);
lstrcat(szOut, szTransfer);
}
MessageBox(NULL, szOut, TEXT("Test"), MB_OK);
/* delete the last one */
nTransferSyntaxCount = L_DicomGetTransferCount(hPDU, nID);
L_DicomDelTransfer(hPDU, nID, nTransferSyntaxCount - 1);
/* display each Transfer Syntax */
lstrcpy(szOut, TEXT("Transfer Syntax--add a transfer syntax"));
nTransferSyntaxCount = L_DicomGetTransferCount(hPDU, nID);
for(i = 0; i<nTransferSyntaxCount; i++)
{
lstrcat(szOut, TEXT("\n"));
L_DicomGetTransfer(hPDU, nID, i, szTransfer, PDU_MAX_UID_SIZE+1);
lstrcat(szOut, szTransfer);
}
MessageBox(NULL, szOut, TEXT("Test"), MB_OK);
return DICOM_SUCCESS;
}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET