DCMTK Version 3.7.0 OFFIS DICOM Toolkit

Public Member Functions | Private Member Functions | Private Attributes | List of all members
FGUnknown Class Reference

Class representing an "unknown" functional group, e.g. a private one specified by a vendor or one that is not explicitly known yet to the dcmfg library. More...

Inheritance diagram for FGUnknown:

## Public Member Functions
| FGUnknown (const DcmTagKey &seqStartTag, const DcmFGTypes::E_FGSharedType sharedType=DcmFGTypes::EFGS_UNKNOWN)
| Creates unknown (to the dcmfg class library) functional group. More...
| FGUnknown (const FGUnknown &rhs)
| Copy constructor, performs a deep copy of the given object. More...
FGUnknown & | operator= (const FGUnknown &rhs)
| Assignment operator, performs a deep copy for assigning given object. More...
virtual DcmFGTypes::E_FGType | getType () const
| Returns type of this functional group (always "EFG_UNKNOWN") More...
virtual DcmFGTypes::E_FGSharedType | getSharedType () const
| Returns whether this group is potentially per-frame, shared or can be both. More...
virtual FGBase * | clone () const
| Returns a deep copy of this object. More...
virtual OFCondition | check () const
| Check whether this functional group contains valid data. More...
virtual void | clearData ()
| Clear data within this group.
virtual OFCondition | read (DcmItem &item)
| Read this group into memory. More...
virtual OFCondition | write (DcmItem &item)
| Write this group to given item. More...
virtual int | compare (const FGBase &rhs) const
| Comparison operator that compares the normalized value of this object with a given object of the same type, i.e. the elements within both functional groups (this and rhs parameter) are compared by value! Both objects (this and rhs) need to have the same type (i.e. both FGUnknown) to be comparable. More...
virtual | ~FGUnknown ()
| Virtual destructor, frees memory.
Public Member Functions inherited from FGBase
| FGBase (const DcmFGTypes::E_FGType fgType)
| Constructor, creates new functional group of given type. More...
virtual | ~FGBase ()
| Virtual destructor.

## Private Member Functions
| FGUnknown ()
| Private default constructor, shall not be used.

## Private Attributes
DcmTagKey | m_seqStartTag
| The tag that uniquely identifies this functional group.
DcmSequenceOfItems * | m_fgSequence
| The data hold by this item, i.e. the sequence making up the functional group.
DcmFGTypes::E_FGSharedType | m_sharedType
| Denotes whether this group is potentially per-frame, shared or can be both.

## Additional Inherited Members
Protected Member Functions inherited from FGBase
virtual OFCondition | getItemFromFGSequence (DcmItem &source, const DcmTagKey &seqKey, const unsigned long itemNum, DcmItem *&result)
| Get the item containing the payload of a functional group sequence, identified by the functional group's sequence key provided and the desired item number. More...
virtual OFCondition | getNumItemsFromFGSequence (DcmItem &source, const DcmTagKey &seqKey, unsigned long &result)
| Get number of items in a functional group sequence, identified by the functional group's sequence key. More...
virtual OFCondition | createNewFGSequence (DcmItem &destination, const DcmTagKey &seqKey, const unsigned long numItems, DcmItem *&firstItem)
| Create functional group sequence specified by given sequence tag key. More...

## Detailed Description

Class representing an "unknown" functional group, e.g. a private one specified by a vendor or one that is not explicitly known yet to the dcmfg library.

The main purpose is to have a container for such functional groups that allows to read them into memory, access them using a low level API, and to be able to write store them back.

## Constructor & Destructor Documentation

## ◆ FGUnknown() [1/2]

FGUnknown::FGUnknown | ( | const DcmTagKey & | seqStartTag,
|  | const DcmFGTypes::E_FGSharedType | sharedType = `DcmFGTypes::EFGS_UNKNOWN`
| ) |  |

Creates unknown (to the dcmfg class library) functional group.

Parameters

  seqStartTag | The tag that uniquely identifies this functional group
  sharedType | Defines whether this group is potentially per-frame, shared or can be both. Default is "unknown".

## ◆ FGUnknown() [2/2]

FGUnknown::FGUnknown | ( | const FGUnknown & | rhs | ) |

Copy constructor, performs a deep copy of the given object.

Parameters

  rhs | The functional group to initialize from

## Member Function Documentation

## ◆ check()

virtual OFCondition FGUnknown::check | ( |  | ) | const
| virtual

Check whether this functional group contains valid data.

Returns
  EC_Normal if functional group is valid. For now, always returns EC_Normal

Implements FGBase.

## ◆ clone()

virtual FGBase* FGUnknown::clone | ( |  | ) | const
| virtual

Returns a deep copy of this object.

Returns
  Deep copy of this object

Implements FGBase.

## ◆ compare()

virtual int FGUnknown::compare | ( | const FGBase & | rhs | ) | const
| virtual

Comparison operator that compares the normalized value of this object with a given object of the same type, i.e. the elements within both functional groups (this and rhs parameter) are compared by value! Both objects (this and rhs) need to have the same type (i.e. both FGUnknown) to be comparable.

This function is used in order to decide whether a functional group already exists, or is new. This is used in particular to find out whether a given functional group can be shared (i.e. the same information already exists as shared functional group) or is different from the same shared group. In that case the shared functional group must be distributed into per-frame functional groups, instead. The exact implementation for implementing the comparison is not relevant. However, it must be a comparison by value.

Parameters

  rhs | the right hand side of the comparison

Returns
  0 if the object values are equal. -1 if either the value of the first component that does not match is lower in the this object, or all compared components match but this component is shorter. Also returned if this type and rhs type (DcmFGTypes::E_FGType) do not match. 1 if either the value of the first component that does not match is greater in this object, or all compared components match but this component is longer.

Implements FGBase.

## ◆ getSharedType()

virtual DcmFGTypes::E_FGSharedType FGUnknown::getSharedType | ( |  | ) | const
| inline virtual

Returns whether this group is potentially per-frame, shared or can be both.

Returns
  The functional group's "shared type"

Implements FGBase.

## ◆ getType()

virtual DcmFGTypes::E_FGType FGUnknown::getType | ( |  | ) | const
| inline virtual

Returns type of this functional group (always "EFG_UNKNOWN")

Returns
  Always returns DcmFGTypes::EFG_UNKNOWN

Reimplemented from FGBase.

References DcmFGTypes::EFG_UNKNOWN.

## ◆ operator=()

FGUnknown& FGUnknown::operator= | ( | const FGUnknown & | rhs | ) |

Assignment operator, performs a deep copy for assigning given object.

Parameters

  rhs | The functional group to assign from

Returns
  Reference to this object

## ◆ read()

virtual OFCondition FGUnknown::read | ( | DcmItem & | item | ) |
| virtual

Read this group into memory.

Parameters

  item | The item to read from

Returns
  EC_Normal if reading was successful, error code otherwise

Implements FGBase.

## ◆ write()

virtual OFCondition FGUnknown::write | ( | DcmItem & | item | ) |
| virtual

Write this group to given item.

Parameters

  item | The item to write to

Returns
  EC_Normal if writing was successful, error code otherwise

Implements FGBase.

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

- dcmfg/include/dcmtk/dcmfg/fgbase.h

Generated on Mon Dec 15 2025 for DCMTK Version 3.7.0 by Doxygen 1.9.1