DCMTK: FGPixelValueTransformation Class Reference

DCMTK Version 3.6.9 OFFIS DICOM Toolkit

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
FGPixelValueTransformation Class Reference

Class representing different flavors of the Pixel Value Transformation FG: More...

Inheritance diagram for FGPixelValueTransformation:

## Public Types
enum | E_PixelValueTransformationSubType { E_PixelValTrans_Normal , E_PixelValTrans_Identity , E_PixelValTrans_CT }
| Enumerated values for the type of functional group that this class should represent. More...

## Public Member Functions
| FGPixelValueTransformation ()
| Constructor, creates (Identity) Pixel Value Transformation Functional Group.
virtual | ~FGPixelValueTransformation ()
| Destructor, frees memory.
virtual void | setUseAsIdentityPixelValueTransformation ()
| This method is deprecated, use setFGType instead.
virtual void | setFGType (const E_PixelValueTransformationSubType fgType)
| Tell this class as which type of functional group it should behave.
virtual E_PixelValueTransformationSubType | getFGType () const
| Get type Functional Group represented by this class.
virtual FGBase * | clone () const
| Returns a deep copy of this object.
virtual DcmFGTypes::E_FGSharedType | getSharedType () const
| Get shared type of this functional group (can be both, per-frame and shared)
virtual void | clearData ()
| Clears all data.
virtual OFCondition | check () const
| Check whether functional group contains valid data.
virtual OFCondition | read (DcmItem &item)
| Read functional group from given item, i.e. read (Identity) Pixel Value Transformation Sequence.
virtual OFCondition | write (DcmItem &item)
| Write functional group to given item, i.e. write (Identity) Pixel Value Transformation Sequence.
virtual OFCondition | getRescaleIntercept (OFString &value, const signed long pos=0) const
| Get RescaleIntercept.
virtual OFCondition | getRescaleSlope (OFString &value, const signed long pos=0) const
| Get RescaleSlope.
virtual OFCondition | getRescaleType (OFString &value, const signed long pos=0) const
| Get RescaleType.
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!
virtual OFCondition | setRescaleIntercept (const OFString &value, const OFBool checkValue=OFTrue)
| Set RescaleIntercept.
virtual OFCondition | setRescaleSlope (const OFString &value, const OFBool checkValue=OFTrue)
| Set RescaleSlope.
virtual OFCondition | setRescaleType (const OFString &value, const OFBool checkValue=OFTrue)
| Set RescaleType.
Public Member Functions inherited from FGBase
| FGBase (const DcmFGTypes::E_FGType fgType)
| Constructor, creates new functional group of given type.
virtual DcmFGTypes::E_FGType | getType () const
| Return the type of this functional group.
virtual | ~FGBase ()
| Virtual destructor.

## Protected Member Functions
virtual OFString | fgType2Str ()
| Returns String denoting the type of functional group represented by this class.
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.
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.
virtual OFCondition | createNewFGSequence (DcmItem &destination, const DcmTagKey &seqKey, const unsigned long numItems, DcmItem *&firstItem)
| Create functional group sequence specified by given sequence tag key.

## Private Attributes
DcmDecimalString | m_RescaleIntercept
| RescaleIntercept (DS, VM 1, Required type 1)
DcmDecimalString | m_RescaleSlope
| RescaleSlope (DS, VM 1, Required type 1)
DcmLongString | m_RescaleType
| RescaleType (LO, VM 1, Required type 1)
E_PixelValueTransformationSubType | m_fgSubType
| Denotes the represented functional group type.

## Detailed Description

Class representing different flavors of the Pixel Value Transformation FG:

- Pixel Value Transformation
- Identity Pixel Value Transformation
- CT Pixel Value Transformation The attributes in each type are always the same. Value checking is performed if possible for the selected FG type. Otherwise only logging is adapted where applicable.

## Member Enumeration Documentation

## ◆ E_PixelValueTransformationSubType

enum FGPixelValueTransformation::E_PixelValueTransformationSubType

Enumerated values for the type of functional group that this class should represent.

Enumerator
E_PixelValTrans_Normal | Value representing the "Pixel Value Transformation Functional Group Macro".
E_PixelValTrans_Identity | Value representing the "Identity Pixel Value Transformation Functional Group Macro".
E_PixelValTrans_CT | Value representing the "CT Pixel Value Transformation Functional Group Macro".

## Constructor & Destructor Documentation

## ◆ FGPixelValueTransformation()

FGPixelValueTransformation::FGPixelValueTransformation | ( |  | ) |

Constructor, creates (Identity) Pixel Value Transformation Functional Group.

All values (Rescale Slope, Intercept and Type) are initialized as if the class is used as the Identity Pixel Value Transformation FG, i.e. Rescale Slope is set to 1, Intercept to 0 and Type to "US".

## Member Function Documentation

## ◆ check()

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

Check whether functional group contains valid data.

Returns
  EC_Normal if data is valid, error otherwise

Implements FGBase.

## ◆ clone()

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

Returns a deep copy of this object.

Returns
  Deep copy of this object

Implements FGBase.

References FGBase::FGBase().

## ◆ compare()

virtual int FGPixelValueTransformation::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.

References FGBase::FGBase().

## ◆ fgType2Str()

virtual OFString FGPixelValueTransformation::fgType2Str | ( |  | ) |
| protectedvirtual

Returns String denoting the type of functional group represented by this class.

Returns
  String denoting the type of functional group

## ◆ getFGType()

virtual E_PixelValueTransformationSubType FGPixelValueTransformation::getFGType | ( |  | ) | const
| virtual

Get type Functional Group represented by this class.

Returns
  Type of functional group represented by this class

## ◆ getRescaleIntercept()

virtual OFCondition FGPixelValueTransformation::getRescaleIntercept | ( | OFString & | value,
|  | const signed long | pos = 0 ) const
| virtual

Get RescaleIntercept.

Parameters

  value | Reference to variable in which the value should be stored
  pos | Index of the value to get (0..vm-1), -1 for all components

Returns
  EC_Normal if successful, an error code otherwise

## ◆ getRescaleSlope()

virtual OFCondition FGPixelValueTransformation::getRescaleSlope | ( | OFString & | value,
|  | const signed long | pos = 0 ) const
| virtual

Get RescaleSlope.

Parameters

  value | Reference to variable in which the value should be stored
  pos | Index of the value to get (0..vm-1), -1 for all components

Returns
  EC_Normal if successful, an error code otherwise

## ◆ getRescaleType()

virtual OFCondition FGPixelValueTransformation::getRescaleType | ( | OFString & | value,
|  | const signed long | pos = 0 ) const
| virtual

Get RescaleType.

Parameters

  value | Reference to variable in which the value should be stored
  pos | Index of the value to get (0..vm-1), -1 for all components

Returns
  EC_Normal if successful, an error code otherwise

## ◆ getSharedType()

virtual DcmFGTypes::E_FGSharedType FGPixelValueTransformation::getSharedType | ( |  | ) | const
| inlinevirtual

Get shared type of this functional group (can be both, per-frame and shared)

Returns
  Always returns EFGS_BOTH

Implements FGBase.

References DcmFGTypes::EFGS_BOTH.

## ◆ read()

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

Read functional group from given item, i.e. read (Identity) Pixel Value Transformation Sequence.

Clears existing data before reading.

Parameters

  item | The item to read from

Returns
  EC_Normal if reading was successful, error otherwise

Implements FGBase.

## ◆ setFGType()

virtual void FGPixelValueTransformation::setFGType | ( | const E_PixelValueTransformationSubType | fgType | ) |
| virtual

Tell this class as which type of functional group it should behave.

Transformation Functional Group. This does not make a difference when reading or writing data, but the component name is written correctly for all corresponding log messages.

Parameters

  fgType | Denotes which Functional Group Macro should be represented by this class.

## ◆ setRescaleIntercept()

virtual OFCondition FGPixelValueTransformation::setRescaleIntercept | ( | const OFString & | value,
|  | const OFBool | checkValue = OFTrue )
| virtual

Set RescaleIntercept.

Parameters

  value | Value to be set (single value only) or "" for no value
  checkValue | Check 'value' for conformance with VR (DS) and VM (1) if enabled

Returns
  EC_Normal if successful, an error code otherwise

## ◆ setRescaleSlope()

virtual OFCondition FGPixelValueTransformation::setRescaleSlope | ( | const OFString & | value,
|  | const OFBool | checkValue = OFTrue )
| virtual

Set RescaleSlope.

Parameters

  value | Value to be set (single value only) or "" for no value
  checkValue | Check 'value' for conformance with VR (DS) and VM (1) if enabled

Returns
  EC_Normal if successful, an error code otherwise

## ◆ setRescaleType()

virtual OFCondition FGPixelValueTransformation::setRescaleType | ( | const OFString & | value,
|  | const OFBool | checkValue = OFTrue )
| virtual

Set RescaleType.

Parameters

  value | Value to be set (single value only) or "" for no value
  checkValue | Check 'value' for conformance with VR (LO) and VM (1) if enabled

Returns
  EC_Normal if successful, an error code otherwise

## ◆ setUseAsIdentityPixelValueTransformation()

virtual void FGPixelValueTransformation::setUseAsIdentityPixelValueTransformation | ( |  | ) |
| virtual

This method is deprecated, use setFGType instead.

Tell this class that it should behave like the Identity Pixel Value Transformation Functional Group. This does not make a difference when reading data, but when writing, it is assured that Rescale Slope, Intercept and Type are forced to be set to 1, 0 and "US" respectively.

## ◆ write()

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

Write functional group to given item, i.e. write (Identity) Pixel Value Transformation Sequence.

Parameters

  item | The item to write to

Returns
  EC_Normal if writing was successful, error otherwise

Implements FGBase.

## Member Data Documentation

## ◆ m_fgSubType

E_PixelValueTransformationSubType FGPixelValueTransformation::m_fgSubType
| private

Denotes the represented functional group type.

E_PixelValTrans_Normal: Normal Pixel Value Transformation FG. No no special value requirements. E_PixelValTrans_Identity: Identity Pixel Value Transformation FG. Tells this class that it should behave like the Identity Pixel Value Transformation FG. This does not make a difference when reading data, but when writing, it is assured that Rescale Slope, Intercept and Type are forced to be set to 1, 0 and "US" respectively. E_PixelValTrans_CT: CT Pixel Value Transformation FG. Tells this class that it should behave like the CT Pixel Value Transformation FG. No special value requirements.

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

- dcmfg/include/dcmtk/dcmfg/fgpixeltransform.h

Generated on Wed Apr 30 2025 for DCMTK Version 3.6.9 by Doxygen 1.13.2