LDicomAssociate::GetAbstract

#include "ltdic.h"

L_VOIDLDicomAssociate::GetAbstract(nID, strAbstract, SizeInWords)

L_UCHAR nID;

/* presentation ID */

L_TCHAR * strAbstract;

/* buffer to be updated */

L_UINT32 SizeInWords;

/* size of the destination string buffer*/

Gets the Abstract Syntax for the specified Presentation Context of the DICOM Associate.

Parameter

Description

nID

Presentation ID of the Presentation Context from which to get the abstract syntax. The presentation ID provides information about both the class type of the data and the transfer syntax to use when transferring the data. It also identifies a specific Presentation Context within an Associate.

strAbstract

String Buffer to be updated with the specified Presentation Context of the DICOM Associate.For a list of possible values, refer to Abstract Syntax Values.

SizeInWords

Size of the destination string buffer.

Returns

None.

Comments

The Abstract Syntax provides information about the class type of the data that will be transferred across the DICOM Associate connection.

This function is valid only for DICOM Associates of type Associate Request.

To set the Abstract Syntax of a specific Presentation Context, call LDicomAssociate::SetAbstract.

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

Platforms

Win32, x64

See Also

Functions:

LDicomAssociate::SetAbstract

Topics:

Working with DICOM Associate Connections

Example

L_INT LDicomAssociate_GetAbstractExample(LDicomAssociate *m_pDicomAssociate)
{
   L_INT    nRet;
   L_INT    i;
   L_INT    lCount;
   L_UCHAR  nID;
   CString  cStr;
   L_TCHAR szAbstract[PDU_MAX_UID_SIZE];
   //create the Associate Class as Request
   m_pDicomAssociate = new LDicomAssociate(TRUE);
   //set the Associate to the default
   m_pDicomAssociate->Default();
   //get current results for each Presentation Context
   cStr = "Presentation Contexts--Results";
   lCount = m_pDicomAssociate->GetPresentationCount();
   for (i = 0; i<lCount; i++)
   {
      nID = m_pDicomAssociate->GetPresentation(i);
      m_pDicomAssociate->GetAbstract(nID, szAbstract, PDU_MAX_UID_SIZE);
      cStr += '\n';
      cStr += szAbstract;
   }
   AfxMessageBox(cStr);
   //change first five abstracts
   for (i = 0; i<5; i++)
   {
      nID = m_pDicomAssociate->GetPresentation(i);
      nRet = m_pDicomAssociate->SetAbstract( nID, UID_CR_IMAGE_STORAGE);
      if(nRet != DICOM_SUCCESS)
         return nRet;
   }
   //redisplay
   cStr = "Presentation Contexts--Results";
   for (i = 0; i<lCount; i++)
   {
      nID = m_pDicomAssociate->GetPresentation(i);
      m_pDicomAssociate->GetAbstract(nID, szAbstract, PDU_MAX_UID_SIZE);      
      cStr += '\n';
      cStr += szAbstract;
   }
   AfxMessageBox(cStr);
   //Free associate
   delete m_pDicomAssociate;
   return DICOM_SUCCESS;
}