L_DicomDelTransfer
#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. |
Returns
None.
Comments
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
|
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_DicomGetTransfer, L_DicomSetTransfer, L_DicomGetTransferCount, L_DicomAddTransfer |
|
Topics: |
Example
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;
}