L_DicomGetLong64Value

#include "Ltdic.h"

L_LTDIC_API L_UINT32 L_DicomGetLong64Value(hDS, pElement, pValue, nIndex, nCount)

HDICOMDS hDS;

a DICOM handle

pDICOMELEMENT pElement;

pointer to a DICOMELEMENT structure

L_INT64 * pValue;

pointer to array of L_INT64 values

L_UINT32 nIndex;

index used when multiple values are stored

L_UINT32 nCount;

the number of values to retrieve

Returns a pointer to a long value, stored in the Value Field, of the specified element.

Parameter

Description

hDS

A DICOM handle.

pElement

Pointer to a DICOMELEMENT structure within the Data Set.

pValue

Pointer to an array of L_INT64 values

nIndex

Index value that indicates which value to retrieve when more than one value is stored in the Value Field. The index is zero-based.

nCount

Value that indicates the number of values to retrieve when more than one value is stored in the Value Field. In most instances you will only retrieve one value so this parameter will be one.

Returns

!NULL

A pointer to a L_INT64  value stored in the Value Field of the specified Data Element.

NULL

The length of the Value Field is 0, the function was called for the incorrect VR type, or the function was called for a folder (sequence) element.

Comments

If you have more than one value stored in the Value Field of the specified Data Element, you can retrieve one or more of those elements. For example, if the Value Field of the specified Data Element contains three long values, and you are only interested in retrieving the last two long values, set nIndex to 1 and nCount to 2. This tells the function to retrieve the long values starting at position 1 (the index is zero based) and retrieve two values. Therefore you would retrieve the values in positions 1 and 2 in the Value Field.

You are responsible for passing in an array of the proper size for pValue.  For example, if you want to retrieve three values, you should declare (or allocate) an array of this size to pass as the pValue parameter.

This function can be called only if the Value Representation of the Data Element is VR_IS. For more information about Value Representations, refer to Default Value Representation Table.

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, Linux.

See Also

Functions:

L_DicomGetBinaryValue, L_DicomGetCharValue, L_DicomGetShortValue, L_DicomGetFloatValue, L_DicomGetDoubleValue, L_DicomGetStringValue, L_DicomGetAgeValue, L_DicomGetDateValue, L_DicomGetTimeValue, L_DicomGetDateTimeValue

Topics:

Working with Data Sets

Example

This example creates a DICOM dataset, set the instance number, and retrieves the instance number as 64-bit values.

L_VOID DicomGetLong64ValueExample() 
{ 
   HDICOMDS hDS = L_DicomCreateDS(NULL); 
   if (hDS == NULL) 
      return; 
   L_DicomInitDS(hDS, CLASS_CT_IMAGE_STORAGE, 0); 
   pDICOMELEMENT pElement = L_DicomFindFirstElement(hDS, NULL, TAG_INSTANCE_NUMBER, TRUE); 
   if (pElement == NULL) 
      return; 
   // Set some values 
   L_INT32 nValues[] = {123, 234, 345}; 
   L_DicomSetLongValue(hDS, pElement, nValues, 3); 
   // Ret rieve as 64 bit values 
   L_UINT32 uCount = L_DicomGetCountValue(hDS, pElement); 
   if (uCount == 0) 
      return; 
   L_INT64 *n64Values = new L_INT64[uCount]; 
   if (n64Values == NULL) 
      return; 
   L_DicomGetLong64Value(hDS, pElement, n64Values, 0, uCount); 
   for (L_UINT32 i=0; i<uCount; i++) 
   { 
      L_TCHAR szMsg[200]; 
      wsprintf(szMsg, TEXT("%d: %d\n"), i, n64Values[i]); 
      OutputDebugString(szMsg); 
   } 
   // Free the dataset 
   delete n64Values; 
   L_DicomFreeDS(hDS); 
} 

Help Version 19.0.2017.10.27
Products | Support | Contact Us | Copyright Notices
© 1991-2017 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS DICOM C API Help