L_DicomDelTransfer

#include "ltdic.h"

L_LTDIC_API L_VOID L_DicomDelTransfer(hPDU, nID, nIndex)

Deletes a Transfer Syntax from the specified Presentation Context.

Parameters

HDICOMPDU hPDU

A DICOM Associate handle.

L_UCHAR 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.

L_INT 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

Platforms

Win32, x64, Linux.

See Also

Functions

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; 
} 
Help Version 20.0.2020.4.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS DICOM C API Help