L_DicomGetFirstIOD

#include "Ltdic.h"

pDICOMIOD EXT_FUNCTION L_DicomGetFirstIOD(pIOD, bTree)

pDICOMIOD pIOD;

/* pointer to a DICOMIOD structure */

L_BOOL bTree;

/* flag that indicates how to evaluate the IOD Structure */

Returns a pointer to the first item in the IOD Structure. The result depends on whether the IOD Structure is evaluated as a tree or a list.

Parameter

Description

pIOD

Pointer to a DICOMIOD structure within the IOD Structure. A pointer to the DICOMIOD structure that contains the first item in the IOD Structure will be returned.

bTree

Flag that indicates how the IOD Structure will be evaluated. Possible values are:

 

Value

Meaning

 

TRUE

Evaluate the IOD Structure as a tree.

 

FALSE

Evaluate the IOD Structure as a list.

Returns

!NULL

A pointer to a DICOMIOD structure that contains the first item in the IOD Structure.

NULL

The IOD Structure is empty.

Comments

If the IOD Structure is evaluated as a tree structure, this function returns the first item on the same level as pIOD with the same parent as pIOD. Please note that the numbering of the items in this first illustration is arbitrary and does not imply order.

image\GetFstTr.gif

 

If the passed pointer points to :

The function returns a pointer to :

Item 1

Item 2

Item 3

Item 4

Item 5

Item 5

Item 6

Item 7

NULL

Item 2

If the IOD Structure is evaluated as a list, the first item in the list is returned. Please note that the numbering of the items in this illustration does indicate the order of the items when the IOD Structure is evaluated as a list.

image\GetFtLst.gif

 

If the passed pointer points to :

The function returns a pointer to :

NULL

Item 1

Item 12

Item 1

Item 14

Item 1

Item 22

Item 1

Item 25

Item 1

The following functions will also help you navigate the IOD Structure as either a tree or a list:

L_DicomGetLastIOD

L_DicomGetPrevIOD

L_DicomGetNextIOD

If you evaluate the IOD Structure as a tree, you can also use the following functions to navigate the tree:

L_DicomGetRootIOD

L_DicomGetParentIOD

L_DicomGetChildIOD

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_DicomGetLastIOD, L_DicomGetPrevIOD, L_DicomGetNextIOD, L_DicomGetCountModuleIOD, L_DicomGetRootIOD, L_DicomGetParentIOD, L_DicomGetChildIOD

Topics:

Working with Information Object Definitions

Example

/* This example displays in a tree control the list of the IOD table */

L_VOID ShowList(HWND hDlg)
{
   TV_INSERTSTRUCT tvInsert;
   TV_ITEM         tvItem;
   HTREEITEM       hItem;
   pDICOMIOD       pIOD;

   pIOD = L_DicomGetFirstIOD(NULL, FALSE);

   while (pIOD != NULL)
   {
      tvItem.mask           = TVIF_TEXT;
      tvItem.pszText        = pIOD->pszName;
      tvInsert.hParent      = TVI_ROOT;
      tvInsert.hInsertAfter = TVI_LAST;
      tvInsert.item         = tvItem;

      hItem = (HTREEITEM)SendMessage(hDlg, TVM_INSERTITEM, (WPARAM)0,
                                     (LPARAM)(LPTV_INSERTSTRUCT)&tvInsert);

      pIOD = L_DicomGetNextIOD(pIOD, FALSE);
   }
}

L_VOID Test(HWND hDlg)
{
   ShowList(hDlg);
}