LDicomDS::SaveDS

#include "Ltdic.h"

L_UINT16 LDicomDS::SaveDS(pFile, nFlags)

Saves the Data Set to the specified file.

Parameters

L_TCHAR * pszName

Character string that contains the name of the file.

L_UINT16 nFlags

Meta-header flags, Transfer Syntax flags and other flags that indicate file characteristics to use when saving the file. Possible values for Meta-header flags are.

Value Meaning
0 [0x0000] Save the Data Set using the characteristics used when loading the Data Set. This can be used with compressed or uncompressed images.
DS_METAHEADER_PRESENT [0x0001] The header is present. This can be used with compressed or uncompressed images.
DS_METAHEADER_ABSENT [0x0002] The header is absent. This can be used only with uncompressed images.

Possible values and combinations for the Transfer Syntax flags are:

Value Meaning
0 [0x0000] Save the Data Set using the characteristics used when loading the Data Set. This can be used with compressed or uncompressed images.
DS_LITTLE_ENDIAN [0x0004] Byte order is Little Endian. This can be used with compressed or uncompressed images.
DS_BIG_ENDIAN [0x0008] Byte order is Big Endian. This can be used only with uncompressed images.
DS_IMPLICIT_VR [0x0010] The Value Representation is implicit. This can be used only with uncompressed images.
DS_EXPLICIT_VR [0x0020] The Value Representation is explicit. This can be used with compressed or uncompressed images.

The following Transfer Syntax flag combinations can be used only with uncompressed images:

Value Meaning
DS_LITTLE_ENDIAN | DS_IMPLICIT_VR Little Endian Byte Order/Implicit Value Representation
DS_BIG_ENDIAN | DS_EXPLICIT_VR Big Endian Byte Order/Explicit Value Representation

The following Transfer Syntax flag combination can be used with compressed or uncompressed images:

Value Meaning
DS_LITTLE_ENDIAN | DS_EXPLICIT_VR Little Endian Byte Order/Explicit Value Representation

Possible values and combinations for other flags are:

Value Meaning
0 [0x0000] Save the Data Set using the characteristics used when loading the Data Set.
DS_GROUP_LENGTHS [0x0040] Include an entry in the file for each group with the group number and the number of elements that group has.
DS_LENGTH_EXPLICIT [0x0080] The length of a sequence (in bytes) is encoded as a 32-bit integer and no Sequence delimitation item is included at the end of the sequence.
DS_EXCLUDE_METAHEADER_GROUP [0x0100] Elements with the tag number 0x0002xxxx will not be saved in the file.
DS_GROUP_LENGTHS | DS_LENGTH_EXPLICIT

Any of the available Meta-header flags options above may be combined with any of the available options for the Transfer Syntax flags and other flags given above, based on whether the images are compressed or uncompressed. For example, you may combine DS_METAHEADER_ABSENT with DS_LITTLE_ENDIAN | DS_IMPLICIT_VR and DS_GROUP_LENGTHS | DS_LENGTH_EXPLICIT when using uncompressed images, or you may combine DS_METAHEADER_PRESENT with DS_LITTLE_ENDIAN | DS_EXPLICIT_VR and DS_GROUP_LENGTHS | DS_LENGTH_EXPLICIT when using compressed images.

Returns

Value Meaning
0 SUCCESS
>0 An error occurred. Refer to Return Codes.

Comments

If the Data Set was loaded from a file, the file characteristics were included from the file. If you wish to use these same characteristics, save the Data Set with nFlags set to 0.

If you wish to specify the file characteristics for saving the file, set the characteristics using the possible values listed above for nFlags.

Required DLLs and Libraries

Platforms

Win32, x64

See Also

Functions

Topics

Example

This example initializes the Data Set and save it in a file.

L_INT LDicomDS_SaveDSExample() 
 
{ 
   L_INT       nRet; 
   LDicomDS*   pDS; 
 
   pDS = new LDicomDS(NULL); 
 
   pDS->InitDS( CLASS_CT_IMAGE_STORAGE, 0);  
 
   nRet = pDS->SaveDS(MAKE_IMAGE_PATH(TEXT("temp.dcm")), 0); 
   if(nRet != DICOM_SUCCESS) 
      return nRet; 
 
   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