LDicomDS::FindFirstElement

#include "Ltdic.h"

pDICOMELEMENT LDicomDS::FindFirstElement(pElement, nTag, bTree)

Returns a pointer to the first item in the Data Set with the specified tag.

Parameters

pDICOMELEMENT pElement

Pointer to a DICOMELEMENT structure within the Data Set.

L_UINT32 nTag

Tag that specifies the item to find. For a list of default tag values, refer to Data Element Tag Constants.

L_BOOL bTree

Flag that indicates how the Data Set will be evaluated. Possible values are:

Value Meaning
TRUE Evaluate the Data Set as a tree.
FALSE Evaluate the Data Set as a list.

Returns

Value Meaning
!NULL A pointer to a DICOMELEMENT structure that contains the first item in the Data Set with the specified tag.
NULL An item with the specified tag was not found.

Comments

If the Data Set is evaluated as a tree structure, this function returns the first item on the same level as pElement with the same parent as pElement, that has tag nTag.

For the sake of these illustrations, the order of siblings is top to bottom. Therefore first is evaluated top to bottom.

NOTE: The numbering of the items of interest in this first illustration is arbitrary and does not imply order.

image\FndFtTr.gif
If the passed pointer points to : The function returns a pointer to :
Item 1 The first sibling (same level, same parent) of Item 1 that has tag nTag, if such an item exists. If such an item does not exist, the function returns NULL.
Item 2 The first sibling (same level, same parent) of Item 2 that has tag nTag, if such an item exists. If such an item does not exist, the function returns NULL.
Item 3 The first sibling (same level, same parent) of Item 3 that has tag nTag, if such an item exists. If such an item does not exist, the function returns NULL.

If the Data Set is evaluated as a list, this function returns the first item in the entire list that has tag nTag. The search begins at the top of the list.

For the sake of these illustrations, the order of siblings is top to bottom. Therefore first is evaluated top to bottom.

NOTE: The numbering of the items in this illustration does indicate the order of the items when the Data Set is evaluated as a list.

image\FndFtLst.gif
If the passed pointer points to : The function returns a pointer to :
Item 1 The first item in the list that has tag nTag, if such an item exists. Searching begins at the top of the list. If an item with tag nTag is not found, NULL is returned.
Item 14 The first item in the list that has tag nTag, if such an item exists. Searching begins at the top of the list. If an item with tag nTag is not found, NULL is returned.
Item 22 The first item in the list that has tag nTag, if such an item exists. Searching begins at the top of the list. If an item with tag nTag is not found, NULL is returned.

The following functions will also help you find elements in the Data Set with a specific tag:

LDicomDS::FindLastElement

LDicomDS::FindPrevElement

LDicomDS::FindNextElement

The following functions will help you find specific modules in the Data Set:

LDicomDS::FindModule

LDicomDS::FindIndexModule

Required DLLs and Libraries

Platforms

Win32, x64

See Also

Functions

Topics

Example

This example displays in a list-box control the names of all elements.

L_INT LDicomDS_FindFirstElementExample(CListBox *pDlg) 
{ 
   LDicomDS*      pDS; 
   pDICOMELEMENT  pElement; 
   pDICOMTAG      pTag; 
   L_TCHAR        szUnknown[]=TEXT("Unknown"); 
   L_TCHAR*       p; 
 
   pDS = new LDicomDS(NULL); 
 
   pDS->InitDS( CLASS_XA_BIPLANE_IMAGE_STORAGE_RETIRED, 0);  
 
   pElement = pDS->FindFirstElement(NULL, TAG_SOP_CLASS_UID, FALSE); 
   if (pElement != NULL) 
   { 
      pTag = LDicomTag::Find(pElement->nTag); 
      if (pTag != NULL) 
      { 
         p = pTag->pszName; 
      } 
      else 
      { 
         p = szUnknown; 
      } 
 
      pDlg->AddString(p); 
 
      pElement = pDS->FindNextElement(pElement, FALSE); 
   } 
 
   delete pDS; 
 
   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++ Class Library Help