GDCM: gdcm::FileMetaInformation Class Reference

GDCM 3.2.10

Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
gdcm::FileMetaInformation Class Reference

Class to represent a File Meta Information. More...

`#include <gdcmFileMetaInformation.h>`

Inheritance diagram for gdcm::FileMetaInformation:
[legend]
Collaboration diagram for gdcm::FileMetaInformation:
[legend]

## Public Member Functions
| FileMetaInformation ()
| FileMetaInformation (FileMetaInformation const &fmi)=default
| ~FileMetaInformation ()
void | FillFromDataSet (DataSet const &ds)
| Construct a FileMetaInformation from an already existing DataSet:
const TransferSyntax & | GetDataSetTransferSyntax () const
VL | GetFullLength () const
MediaStorage | GetMediaStorage () const
std::string | GetMediaStorageAsString () const
TransferSyntax::NegociatedType | GetMetaInformationTS () const
Preamble & | GetPreamble ()
const Preamble & | GetPreamble () const
| Get Preamble.
void | Insert (const DataElement &de)
bool | IsValid () const
FileMetaInformation & | operator= (const FileMetaInformation &fmi)=default
std::istream & | Read (std::istream &is)
| Read.
std::istream & | ReadCompat (std::istream &is)
void | Replace (const DataElement &de)
void | SetDataSetTransferSyntax (const TransferSyntax &ts)
void | SetPreamble (const Preamble &p)
std::ostream & | Write (std::ostream &os) const
| Write.
Public Member Functions inherited from gdcm::DataSet
Iterator | Begin ()
ConstIterator | Begin () const
void | Clear ()
template<typename TDE>
unsigned int | ComputeGroupLength (Tag const &tag) const
Iterator | End ()
ConstIterator | End () const
bool | FindDataElement (const PrivateTag &t) const
| Look up if private tag 't' is present in the dataset:
bool | FindDataElement (const Tag &t) const
const DataElement & | FindNextDataElement (const Tag &t) const
const DataElement & | GetDataElement (const PrivateTag &t) const
| Return the dataelement.
const DataElement & | GetDataElement (const Tag &t) const
DataElementSet & | GetDES ()
const DataElementSet & | GetDES () const
template<typename TDE>
VL | GetLength () const
MediaStorage | GetMediaStorage () const
std::string | GetPrivateCreator (const Tag &t) const
PrivateTag | GetPrivateTag (const Tag &t) const
| Return the private tag of the private tag 't', private creator will be set to empty if not found.
void | Insert (const DataElement &de)
bool | IsEmpty () const
| Returns if the dataset is empty.
const DataElement & | operator() (uint16_t group, uint16_t element) const
DataSet & | operator= (DataSet const &)=default
const DataElement & | operator[] (const Tag &t) const
void | Print (std::ostream &os, std::string const &indent="") const
template<typename TDE, typename TSwap>
std::istream & | Read (std::istream &is)
template<typename TDE, typename TSwap>
std::istream & | ReadNested (std::istream &is)
template<typename TDE, typename TSwap>
std::istream & | ReadSelectedPrivateTags (std::istream &is, const std::set< PrivateTag > &tags, bool readvalues=true)
template<typename TDE, typename TSwap>
std::istream & | ReadSelectedPrivateTagsWithLength (std::istream &is, const std::set< PrivateTag > &tags, VL &length, bool readvalues=true)
template<typename TDE, typename TSwap>
std::istream & | ReadSelectedTags (std::istream &is, const std::set< Tag > &tags, bool readvalues=true)
template<typename TDE, typename TSwap>
std::istream & | ReadSelectedTagsWithLength (std::istream &is, const std::set< Tag > &tags, VL &length, bool readvalues=true)
template<typename TDE, typename TSwap>
std::istream & | ReadUpToTag (std::istream &is, const Tag &t, std::set< Tag > const &skiptags)
template<typename TDE, typename TSwap>
std::istream & | ReadUpToTagWithLength (std::istream &is, const Tag &t, std::set< Tag > const &skiptags, VL &length)
template<typename TDE, typename TSwap>
std::istream & | ReadWithLength (std::istream &is, VL &length)
SizeType | Remove (const Tag &tag)
| Completely remove a dataelement from the dataset.
void | Replace (const DataElement &de)
| Replace a dataelement with another one.
void | ReplaceEmpty (const DataElement &de)
| Only replace a DICOM attribute when it is missing or empty.
SizeType | Size () const
template<typename TDE, typename TSwap>
std::ostream const & | Write (std::ostream &os) const

## Static Public Member Functions
static void | AppendImplementationClassUID (const char *imp)
static const char * | GetImplementationClassUID ()
static const char * | GetImplementationVersionName ()
static const char * | GetSourceApplicationEntityTitle ()
static void | SetImplementationClassUID (const char *imp)
| Override the GDCM default values:
static void | SetImplementationVersionName (const char *version)
static void | SetSourceApplicationEntityTitle (const char *title)

## Protected Member Functions
void | ComputeDataSetMediaStorageSOPClass ()
void | ComputeDataSetTransferSyntax ()
void | Default ()
template<typename TSwap>
std::istream & | ReadCompatInternal (std::istream &is)
Protected Member Functions inherited from gdcm::DataSet
Tag | ComputeDataElement (const PrivateTag &t) const
const DataElement & | GetDEEnd () const
void | InsertDataElement (const DataElement &de)

## Static Protected Member Functions
static const char * | GetFileMetaInformationVersion ()
static const char * | GetGDCMImplementationClassUID ()
static const char * | GetGDCMImplementationVersionName ()
static const char * | GetGDCMSourceApplicationEntityTitle ()

## Protected Attributes
MediaStorage::MSType | DataSetMS
TransferSyntax | DataSetTS
TransferSyntax::NegociatedType | MetaInformationTS

## Friends
std::ostream & | operator<< (std::ostream &_os, const FileMetaInformation &_val)

## Additional Inherited Members
Public Types inherited from gdcm::DataSet
typedef DataElementSet::const_iterator | ConstIterator
typedef std::set< DataElement > | DataElementSet
typedef DataElementSet::iterator | Iterator
typedef DataElementSet::size_type | SizeType

## Detailed Description

Class to represent a File Meta Information.

FileMetaInformation is a Explicit Structured Set. Whenever the file contains an ImplicitDataElement DataSet, a conversion will take place.

Definition: The File Meta Information includes identifying information on the encapsulated Data Set. This header consists of a 128 byte File Preamble, followed by a 4 byte DICOM prefix, followed by the File Meta Elements shown in Table 7.1-1. This header shall be present in every DICOM file.

See also
  Writer Reader

Examples
  DumpToshibaDTI.cxx, DumpToshibaDTI2.cxx, GenAllVR.cxx, GenFakeIdentifyFile.cxx, LargeVRDSExplicit.cxx, MakeTemplate.cxx, ReadAndDumpDICOMDIR.cxx, ReformatFile.cs, and StandardizeFiles.cs.

## Constructor & Destructor Documentation

## ◆ FileMetaInformation() [1/2]

gdcm::FileMetaInformation::FileMetaInformation | ( |  | ) |

Referenced by FileMetaInformation(), ~FileMetaInformation(), operator<<, and operator=().

## ◆ ~FileMetaInformation()

gdcm::FileMetaInformation::~FileMetaInformation | ( |  | ) |

References FileMetaInformation(), and operator<<.

## ◆ FileMetaInformation() [2/2]

gdcm::FileMetaInformation::FileMetaInformation | ( | FileMetaInformation const & | fmi | ) |
| default

References FileMetaInformation().

## Member Function Documentation

## ◆ AppendImplementationClassUID()

void gdcm::FileMetaInformation::AppendImplementationClassUID | ( | const char * | imp | ) |
| static

## ◆ ComputeDataSetMediaStorageSOPClass()

void gdcm::FileMetaInformation::ComputeDataSetMediaStorageSOPClass | ( |  | ) |
| protected

## ◆ ComputeDataSetTransferSyntax()

void gdcm::FileMetaInformation::ComputeDataSetTransferSyntax | ( |  | ) |
| protected

## ◆ Default()

void gdcm::FileMetaInformation::Default | ( |  | ) |
| protected

## ◆ FillFromDataSet()

void gdcm::FileMetaInformation::FillFromDataSet | ( | DataSet const & | ds | ) |

Construct a FileMetaInformation from an already existing DataSet:

## ◆ GetDataSetTransferSyntax()

const TransferSyntax & gdcm::FileMetaInformation::GetDataSetTransferSyntax | ( |  | ) | const
| inline

Examples
  GetJPEGSamplePrecision.cxx, and MergeTwoFiles.cxx.

References DataSetTS.

## ◆ GetFileMetaInformationVersion()

const char * gdcm::FileMetaInformation::GetFileMetaInformationVersion | ( |  | ) |
| staticprotected

## ◆ GetFullLength()

VL gdcm::FileMetaInformation::GetFullLength | ( |  | ) | const
| inline

References gdcm::DataSet::GetLength(), and gdcm::VL::GetLength().

## ◆ GetGDCMImplementationClassUID()

const char * gdcm::FileMetaInformation::GetGDCMImplementationClassUID | ( |  | ) |
| staticprotected

## ◆ GetGDCMImplementationVersionName()

const char * gdcm::FileMetaInformation::GetGDCMImplementationVersionName | ( |  | ) |
| staticprotected

## ◆ GetGDCMSourceApplicationEntityTitle()

const char * gdcm::FileMetaInformation::GetGDCMSourceApplicationEntityTitle | ( |  | ) |
| staticprotected

## ◆ GetImplementationClassUID()

const char * gdcm::FileMetaInformation::GetImplementationClassUID | ( |  | ) |
| static

## ◆ GetImplementationVersionName()

const char * gdcm::FileMetaInformation::GetImplementationVersionName | ( |  | ) |
| static

## ◆ GetMediaStorage()

MediaStorage gdcm::FileMetaInformation::GetMediaStorage | ( |  | ) | const

## ◆ GetMediaStorageAsString()

std::string gdcm::FileMetaInformation::GetMediaStorageAsString | ( |  | ) | const

## ◆ GetMetaInformationTS()

TransferSyntax::NegociatedType gdcm::FileMetaInformation::GetMetaInformationTS | ( |  | ) | const
| inline

References MetaInformationTS.

## ◆ GetPreamble() [1/2]

Preamble & gdcm::FileMetaInformation::GetPreamble | ( |  | ) |
| inline

## ◆ GetPreamble() [2/2]

const Preamble & gdcm::FileMetaInformation::GetPreamble | ( |  | ) | const
| inline

Get Preamble.

Referenced by operator<<.

## ◆ GetSourceApplicationEntityTitle()

const char * gdcm::FileMetaInformation::GetSourceApplicationEntityTitle | ( |  | ) |
| static

## ◆ Insert()

void gdcm::FileMetaInformation::Insert | ( | const DataElement & | de | ) |
| inline

References gdcmErrorMacro, gdcm::Tag::GetGroup(), gdcm::DataElement::GetTag(), and gdcm::DataSet::InsertDataElement().

Referenced by Replace().

## ◆ IsValid()

bool gdcm::FileMetaInformation::IsValid | ( |  | ) | const
| inline

## ◆ operator=()

FileMetaInformation & gdcm::FileMetaInformation::operator= | ( | const FileMetaInformation & | fmi | ) |
| default

References FileMetaInformation().

## ◆ Read()

std::istream & gdcm::FileMetaInformation::Read | ( | std::istream & | is | ) |

Read.

## ◆ ReadCompat()

std::istream & gdcm::FileMetaInformation::ReadCompat | ( | std::istream & | is | ) |

## ◆ ReadCompatInternal()

template<typename TSwap>

std::istream & gdcm::FileMetaInformation::ReadCompatInternal | ( | std::istream & | is | ) |
| protected

## ◆ Replace()

void gdcm::FileMetaInformation::Replace | ( | const DataElement & | de | ) |
| inline

Examples
  LargeVRDSExplicit.cxx.

References gdcm::DataElement::GetTag(), Insert(), and gdcm::DataSet::Remove().

## ◆ SetDataSetTransferSyntax()

void gdcm::FileMetaInformation::SetDataSetTransferSyntax | ( | const TransferSyntax & | ts | ) |

Examples
  CreateJPIPDataSet.cxx, DumpToshibaDTI.cxx, DumpToshibaDTI2.cxx, EncapsulateFileInRawData.cxx, Extracting_All_Resolution.cxx, Fake_Image_Using_Stream_Image_Writer.cxx, FixJAIBugJPEGLS.cxx, GenAllVR.cxx, GenFakeIdentifyFile.cxx, LargeVRDSExplicit.cxx, MakeTemplate.cxx, MpegVideoInfo.cs, QIDO-RS.cxx, StreamImageReaderTest.cxx, pmsct_rgb1.cxx, and rle2img.cxx.

## ◆ SetImplementationClassUID()

void gdcm::FileMetaInformation::SetImplementationClassUID | ( | const char * | imp | ) |
| static

Override the GDCM default values:

## ◆ SetImplementationVersionName()

void gdcm::FileMetaInformation::SetImplementationVersionName | ( | const char * | version | ) |
| static

## ◆ SetPreamble()

void gdcm::FileMetaInformation::SetPreamble | ( | const Preamble & | p | ) |
| inline

## ◆ SetSourceApplicationEntityTitle()

void gdcm::FileMetaInformation::SetSourceApplicationEntityTitle | ( | const char * | title | ) |
| static

Examples
  ExplicitLittleEndian.cs, FixJAIBugJPEGLS.cxx, GenerateDICOMDIR.cs, ReformatFile.cs, and StandardizeFiles.cs.

## ◆ Write()

std::ostream & gdcm::FileMetaInformation::Write | ( | std::ostream & | os | ) | const

Write.

## Friends And Related Symbol Documentation

## ◆ operator<<

std::ostream & operator<< | ( | std::ostream & | _os,
|  | const FileMetaInformation & | _val )
| friend

References FileMetaInformation(), GetPreamble(), operator<<, and gdcm::DataSet::Print().

Referenced by ~FileMetaInformation(), and operator<<.

## Member Data Documentation

## ◆ DataSetMS

MediaStorage::MSType gdcm::FileMetaInformation::DataSetMS
| protected

## ◆ DataSetTS

TransferSyntax gdcm::FileMetaInformation::DataSetTS
| protected

Referenced by GetDataSetTransferSyntax().

## ◆ MetaInformationTS

TransferSyntax::NegociatedType gdcm::FileMetaInformation::MetaInformationTS
| protected

Referenced by GetMetaInformationTS().

The documentation for this class was generated from the following file:

- gdcmFileMetaInformation.h