Available in LEADTOOLS Medical Imaging toolkits. |
#include "Ltdic.h"
L_UINT32 LDicomDS::GetElementOffset(pElement)
pDICOMELEMENT pElement; |
/* pointer to a DICOMELEMENT structure */ |
Returns the offset of the DICOM element pElement in the DICOM file.
Parameter |
Description |
pElement |
Pointer to a DICOMELEMENT structure within the Data Set. |
Returns
0 |
The offset of the element is unknown. |
>0 |
The offset of the element in the DICOM file. |
Comments
You must load a DICOM file using the flag DS_LOAD_STORE_OFFSETS to use this function. Otherwise, LDicomDS::GetElementOffset will always return 0.
This method is used to return the offset (or physical location) in a DICOM file of any DICOM element.
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 |
Win32, x64
See Also
Functions: |
LDicomDS::LoadDS, LDicomDS::FindFirstElement, LDicomDS::FindNextElement |
Topics: |
|
|
How to Disable the Automatic Loading of the default DICOM IOD Table |
Example
This example loads a DICOM file, and finds the physical offset of the TAG_PATIENT_ID in the file.
#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName L_INT LDicomDS_GetElementOffsetExample() { L_INT nRet = -1; LDicomDS *ds = new LDicomDS(); if (ds == NULL) return nRet; L_TCHAR *pszFile = MAKE_IMAGE_PATH(TEXT("image2.dcm")); nRet = ds->LoadDS(pszFile, DS_LOAD_STORE_OFFSETS); if(nRet != DICOM_SUCCESS) return nRet; pDICOMELEMENT pElement = ds->FindFirstElement(NULL, TAG_PATIENT_ID, TRUE); if (pElement == NULL) return -1; // uOffset will contain the file offset of the TAG_PATIENT_ID element L_UINT32 uOffset = ds->GetElementOffset(pElement); CString csMsg; csMsg.Format(TEXT("The offset of the TAG_PATIENT_ID in file '%s' is: 0x%x"), pszFile, uOffset); OutputDebugString(csMsg); // Clean up delete ds; return nRet; }