DCMTK Version 3.7.0 OFFIS DICOM Toolkit

Public Member Functions | Protected Member Functions | Private Types | Private Attributes | List of all members
DSRContextGroup Class Reference

Class managing common information on a context group. More...

Inheritance diagram for DSRContextGroup:

## Public Member Functions
| operator const DSRCodedEntryValue & () const
| conversion operator that returns the currently selected coded entry value (might be empty if none is selected)
virtual void | clear ()
| clear list of extended coded entries and forget about the currently selected coded entry
OFBool | isExtensible () const
| check whether context group is extensible More...
void | setExtensible (const OFBool mode=OFTrue)
| change mode specifying whether the context group is extensible or non-extensible More...
const OFString & | getIdentifier () const
| get context identifier More...
const OFString & | getMappingResource () const
| get mapping resource More...
const OFString & | getKeyword () const
| get context group keyword More...
const OFString & | getVersion () const
| get context group version (optional) More...
const OFString & | getUID () const
| get context group UID (optional) More...
virtual OFBool | hasSelectedValue () const
| check whether a coded entry is selected as the current value More...
const DSRCodedEntryValue & | getSelectedValue () const
| get currently selected coded entry value (optional) More...
virtual OFCondition | selectValue (const DSRCodedEntryValue &codedEntryValue, const OFBool check=OFTrue, const OFBool definedContextGroup=OFFalse)
| select a given coded entry as the current value More...
virtual OFBool | hasCodedEntry (const DSRCodedEntryValue &codedEntryValue) const
| check whether a given coded entry is contained in this context group. More...
virtual OFCondition | findCodedEntry (const DSRCodedEntryValue &codedEntryValue) const
| search for a given coded entry in this context group. More...
virtual OFBool | hasExtendedCodedEntries () const
| check whether this context group has any extended coded entries. More...
virtual OFCondition | addCodedEntry (const DSRCodedEntryValue &codedEntryValue)
| add a coded entry to this context group as an extension, i.e. as a non-standard code. More...
virtual OFCondition | lookupCodedEntry (DSRCodedEntryValue &codedEntryValue, const OFBool enhancedEncodingMode=OFFalse) const
| search for a given coded entry in this context group and, if found, replace its value with the one found in the context group. More...
virtual void | print (STD_NAMESPACE ostream &stream) const
| print contents of this context group, i.e. a general header, the currently selected coded entry value (if any) and all coded entries that are contained in this context group (both standard and extended ones). More...
virtual OFCondition | checkSelectedValue (const OFBool definedContextGroup=OFFalse) const
| check whether the currently selected coded entry is valid. More...

## Protected Member Functions
| DSRContextGroup (const OFString &contextIdentifier, const OFString &mappingResource, const OFString &contextGroupKeyword="", const OFString &contextGroupVersion="", const OFString &contextGroupUID="", const DSRCodedEntryValue &selectedValue=DSRCodedEntryValue())
| constructor More...
virtual | ~DSRContextGroup ()
| destructor
virtual void | printHeader (STD_NAMESPACE ostream &stream) const
| print header with some general information on this context group More...
virtual void | printCodes (STD_NAMESPACE ostream &stream) const
| print details on coded entries that are contained in this context group. More...
virtual OFCondition | findCodedEntry (const DSRCodedEntryValue &searchForCodedEntry, DSRCodedEntryValue *foundCodedEntry, const OFBool enhancedEncodingMode=OFFalse) const
| search for a given coded entry in this context group More...
virtual OFCondition | checkCodedEntry (const DSRCodedEntryValue &codedEntryValue, const OFBool definedContextGroup) const
| check whether a given coded entry is valid. More...

## Private Types
typedef OFList< DSRCodedEntryValue > | CodeList
| type used for storing and managing coded entries

## Private Attributes
const OFString | Identifier
| context identifier (VR=CS, mandatory)
const OFString | MappingResource
| mapping resource (VR=CS, mandatory)
const OFString | Keyword
| context group keyword (optional)
const OFString | Version
| context group version (VR=DT, optional)
const OFString | UID
| context group UID (VR=UI, optional)
DSRCodedEntryValue | SelectedValue
| coded entry selected as the current value (optional, might be empty)
OFBool | ExtensibleMode
| mode indicating whether context group is extensible (default: false)
CodeList | ExtendedCodes
| extended coded entries (e.g. private or implementation-specific ones)

## Detailed Description

Class managing common information on a context group.

This class is used as a base class only.

## Constructor & Destructor Documentation

## ◆ DSRContextGroup()

DSRContextGroup::DSRContextGroup | ( | const OFString & | contextIdentifier,
|  | const OFString & | mappingResource,
|  | const OFString & | contextGroupKeyword = `""`,
|  | const OFString & | contextGroupVersion = `""`,
|  | const OFString & | contextGroupUID = `""`,
|  | const DSRCodedEntryValue & | selectedValue = `DSRCodedEntryValue()`
| ) |  |
| protected

constructor

Parameters

  contextIdentifier | identifier of the context group
  mappingResource | mapping resource that defines the context group
  contextGroupKeyword | keyword of the context group (optional)
  contextGroupVersion | version of the context group (optional)
  contextGroupUID | unique identifier of the context group (optional)
  selectedValue | coded entry to be selected as the current value (optional)

## Member Function Documentation

## ◆ addCodedEntry()

virtual OFCondition DSRContextGroup::addCodedEntry | ( | const DSRCodedEntryValue & | codedEntryValue | ) |
| virtual

add a coded entry to this context group as an extension, i.e. as a non-standard code.

Adding a new coded entry by this method only works for extensible context groups. Please note that the 'codedEntryValue' is not checked for validity.

Parameters

  codedEntryValue | coded entry to be added to this context group

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ checkCodedEntry()

virtual OFCondition DSRContextGroup::checkCodedEntry | ( | const DSRCodedEntryValue & | codedEntryValue,
|  | const OFBool | definedContextGroup
| ) |  | const
| protected virtual

check whether a given coded entry is valid.

Internally, the method hasCodedEntry() is used if 'definedContextGroup' is OFTrue.

Parameters

  codedEntryValue | coded entry to be checked
  definedContextGroup | flag indicating whether this context group is used as a baseline (default) or defined context group. The first means that the list of coded entries in this context group is just a suggestion. The latter means that one of the coded entries should be used.

Returns
  status, EC_Normal if either no coded entry is selected or the selected one is both valid and allowed for this context group, an error code otherwise

## ◆ checkSelectedValue()

virtual OFCondition DSRContextGroup::checkSelectedValue | ( | const OFBool | definedContextGroup = `OFFalse` | ) | const
| virtual

check whether the currently selected coded entry is valid.

Internally, the method hasCodedEntry() is used if 'definedContextGroup' is OFTrue.

Parameters

  definedContextGroup | flag indicating whether this context group is used as a baseline (default) or defined context group. The first means that the list of coded entries in this context group is just a suggestion. The latter means that one of the coded entries should be used.

Returns
  status, EC_Normal if either no coded entry is selected or the selected one is both valid and allowed for this context group, an error code otherwise

## ◆ findCodedEntry() [1/2]

virtual OFCondition DSRContextGroup::findCodedEntry | ( | const DSRCodedEntryValue & | codedEntryValue | ) | const
| virtual

search for a given coded entry in this context group.

If found, the type of the entry (standard or extension) is returned:

- SR_EC_CodedEntryInStandardContextGroup
- SR_EC_CodedEntryIsExtensionOfContextGroup

Parameters

  codedEntryValue | coded entry to be searched for

Returns
  result of the search process, SR_EC_CodedEntryNotInContextGroup if coded entry could not be found. Use OFCondition::good() or OFCondition::bad() if not interested in the type of the entry.

## ◆ findCodedEntry() [2/2]

virtual OFCondition DSRContextGroup::findCodedEntry | ( | const DSRCodedEntryValue & | searchForCodedEntry,
|  | DSRCodedEntryValue * | foundCodedEntry,
|  | const OFBool | enhancedEncodingMode = `OFFalse`
| ) |  | const
| protected virtual

search for a given coded entry in this context group

Parameters

  searchForCodedEntry | coded entry to be searched for
  foundCodedEntry | pointer to variable that will store the coded entry (if found and pointer is not NULL)
  enhancedEncodingMode | set enhanced encoding mode for coded entry (not used for this class, only in derived classes)

Returns
  result of the search process, also defines the type of the entry

Reimplemented in CID7551_GenericPurposeOfReferenceToImagesAndCoordinatesInMeasurement, CID7469_GenericIntensityAndSizeMeasurement, CID7464_GeneralRegionOfInterestMeasurementModifier, CID7453_PerformingRole, CID7452_OrganizationalRole, CID7445_DeviceParticipatingRole, CID7181_AbstractMultiDimensionalImageModelComponentUnit, CID7021_MeasurementReportDocumentTitle, CID6147_ResponseCriteria, CID5001_Country, CID5000_Language, CID42_NumericValueQualifier, CID4031_CommonAnatomicRegion, CID4021_PETRadiopharmaceutical, CID4020_PETRadionuclide, CID29_AcquisitionModality, CID247_LateralityLeftRightOnly, CID244_Laterality, CID218_QuantitativeImageFeature, CID11_AdministrationRoute, CID10033_CTReconstructionAlgorithm, CID10013_CTAcquisitionType, and CID100_QuantitativeDiagnosticImagingProcedure.

## ◆ getIdentifier()

const OFString& DSRContextGroup::getIdentifier | ( |  | ) | const
| inline

get context identifier

Returns
  identifier of the context group

## ◆ getKeyword()

const OFString& DSRContextGroup::getKeyword | ( |  | ) | const
| inline

get context group keyword

Returns
  keyword of the context group (might be empty)

## ◆ getMappingResource()

const OFString& DSRContextGroup::getMappingResource | ( |  | ) | const
| inline

get mapping resource

Returns
  mapping resource that defines the context group

## ◆ getSelectedValue()

const DSRCodedEntryValue& DSRContextGroup::getSelectedValue | ( |  | ) | const
| inline

get currently selected coded entry value (optional)

Returns
  current value (might be empty if none is selected)

## ◆ getUID()

const OFString& DSRContextGroup::getUID | ( |  | ) | const
| inline

get context group UID (optional)

Returns
  unique identifier of the context group (might be empty)

## ◆ getVersion()

const OFString& DSRContextGroup::getVersion | ( |  | ) | const
| inline

get context group version (optional)

Returns
  version of the context group (might be empty)

## ◆ hasCodedEntry()

virtual OFBool DSRContextGroup::hasCodedEntry | ( | const DSRCodedEntryValue & | codedEntryValue | ) | const
| virtual

check whether a given coded entry is contained in this context group.

Internally, the method findCodedEntry() is used for this purpose.

Parameters

  codedEntryValue | coded entry to be checked

Returns
  OFTrue if coded entry is part of this context group, OFFalse otherwise

## ◆ hasExtendedCodedEntries()

virtual OFBool DSRContextGroup::hasExtendedCodedEntries | ( |  | ) | const
| virtual

check whether this context group has any extended coded entries.

Extended coded entries are those non-standard codes added by addCodedEntry().

Returns
  OFTrue if there are any extended coded entries, OFFalse otherwise

## ◆ hasSelectedValue()

virtual OFBool DSRContextGroup::hasSelectedValue | ( |  | ) | const
| virtual

check whether a coded entry is selected as the current value

Returns
  OFTrue if a value is selected, OFFalse otherwise

## ◆ isExtensible()

OFBool DSRContextGroup::isExtensible | ( |  | ) | const
| inline

check whether context group is extensible

Returns
  OFTrue if extensible, OFFalse otherwise

## ◆ lookupCodedEntry()

virtual OFCondition DSRContextGroup::lookupCodedEntry | ( | DSRCodedEntryValue & | codedEntryValue,
|  | const OFBool | enhancedEncodingMode = `OFFalse`
| ) |  | const
| virtual

search for a given coded entry in this context group and, if found, replace its value with the one found in the context group.

This method can, therefore, be used to lookup the "official" code meaning or to set the "enhanced encoding mode".

Parameters

  codedEntryValue | coded entry to be searched for. Should be a valid code, i.e. at least the three mandatory components have to be non-empty. Also used to store the retrieved coded entry.
  enhancedEncodingMode | set enhanced encoding mode for coded entry (if enabled)

Returns
  result of the search process, see findCodedEntry() for details

## ◆ print()

virtual void DSRContextGroup::print | ( | STD_NAMESPACE ostream & | stream | ) | const
| virtual

print contents of this context group, i.e. a general header, the currently selected coded entry value (if any) and all coded entries that are contained in this context group (both standard and extended ones).

See DSRCodedEntryValue::print() for details of the coded entry output.

Parameters

  stream | stream to which the output should be printed

## ◆ printCodes()

virtual void DSRContextGroup::printCodes | ( | STD_NAMESPACE ostream & | stream | ) | const
| protected virtual

print details on coded entries that are contained in this context group.

See DSRCodedEntryValue::print() for details of the coded entry output.

Parameters

  stream | stream to which the output should be printed

Reimplemented in CID7551_GenericPurposeOfReferenceToImagesAndCoordinatesInMeasurement, CID7469_GenericIntensityAndSizeMeasurement, CID7464_GeneralRegionOfInterestMeasurementModifier, CID7453_PerformingRole, CID7452_OrganizationalRole, CID7445_DeviceParticipatingRole, CID7181_AbstractMultiDimensionalImageModelComponentUnit, CID7021_MeasurementReportDocumentTitle, CID6147_ResponseCriteria, CID5001_Country, CID5000_Language, CID42_NumericValueQualifier, CID4031_CommonAnatomicRegion, CID4021_PETRadiopharmaceutical, CID4020_PETRadionuclide, CID29_AcquisitionModality, CID247_LateralityLeftRightOnly, CID244_Laterality, CID218_QuantitativeImageFeature, CID11_AdministrationRoute, CID10033_CTReconstructionAlgorithm, CID10013_CTAcquisitionType, and CID100_QuantitativeDiagnosticImagingProcedure.

## ◆ printHeader()

virtual void DSRContextGroup::printHeader | ( | STD_NAMESPACE ostream & | stream | ) | const
| protected virtual

print header with some general information on this context group

Parameters

  stream | stream to which the output should be printed

## ◆ selectValue()

virtual OFCondition DSRContextGroup::selectValue | ( | const DSRCodedEntryValue & | codedEntryValue,
|  | const OFBool | check = `OFTrue`,
|  | const OFBool | definedContextGroup = `OFFalse`
| ) |  |
| virtual

select a given coded entry as the current value

Parameters

  codedEntryValue | coded entry to be selected as the current value
  check | if enabled, check 'codedEntryValue' for validity and appropriateness before selecting it as the current value. See checkSelectedValue() for details.
  definedContextGroup | flag indicating whether this context group is used as a baseline (default) or defined context group. The first means that the list of coded entries in this context group is just a suggestion. The latter means that one of the coded entries should be used.

Returns
  status, EC_Normal if successful, an error code otherwise

## ◆ setExtensible()

void DSRContextGroup::setExtensible | ( | const OFBool | mode = `OFTrue` | ) |
| inline

change mode specifying whether the context group is extensible or non-extensible

Parameters

  mode | set context group type to extensible if OFTrue (default)

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

- dcmsr/include/dcmtk/dcmsr/dsrctxgr.h

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