DCMTK Version 3.6.9 OFFIS DICOM Toolkit

Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
DSRListOfItems< T > Class Template Reference

Template class to store and access items in a list structure. More...

## Public Member Functions
| DSRListOfItems ()
| default constructor
| DSRListOfItems (const DSRListOfItems< T > &lst)
| copy constructor
virtual | ~DSRListOfItems ()
| destructor
DSRListOfItems< T > & | operator= (const DSRListOfItems< T > &lst)
| assignment operator
OFBool | operator== (const DSRListOfItems< T > &lst) const
| comparison operator "equal"
OFBool | operator!= (const DSRListOfItems< T > &lst) const
| comparison operator "not equal"
void | clear ()
| clear all internal variables
OFBool | isEmpty () const
| check whether the list is empty
size_t | getNumberOfItems () const
| get number of items contained in the list
OFBool | isElement (const T &item) const
| check whether specified item is contained in the list
const T & | getItem (const size_t idx) const
| get reference to the specified item
OFCondition | getItem (const size_t idx, T &item) const
| get copy of the specified item
OFCondition | getItems (OFVector< T > &items) const
| get copy of all items (as a vector)
void | addItem (const T &item)
| add item to the list
void | addOnlyNewItem (const T &item)
| add item to the list only if it's not already contained
void | addItems (const OFVector< T > &items)
| add items to the list
OFCondition | insertItem (const size_t idx, const T &item)
| insert item at specified position to the list
OFCondition | removeItem (const size_t idx)
| remove item from the list

## Protected Member Functions
OFBool | gotoItemPos (size_t idx, OFLIST_TYPENAME OFListConstIterator(T) &iterator) const
| goto specified item position
OFBool | gotoItem (const T &item, OFLIST_TYPENAME OFListConstIterator(T) &iterator) const
| goto specified item

## Protected Attributes
OFList< T > | ItemList
| the list maintained by this class

## Detailed Description

template<class T>
class DSRListOfItems< T >

Template class to store and access items in a list structure.

For instances of this class T needs to have at least a default constructor, assignment and comparison operator.

## Constructor & Destructor Documentation

## ◆ DSRListOfItems()

template<class T>

DSRListOfItems< T >::DSRListOfItems | ( | const DSRListOfItems< T > & | lst | ) |
| inline

copy constructor

Parameters

  lst | list to be copied

References DSRListOfItems(), and ItemList.

## Member Function Documentation

## ◆ addItem()

template<class T>

void DSRListOfItems< T >::addItem | ( | const T & | item | ) |
| inline

add item to the list

Parameters

  item | item to be added

References ItemList.

## ◆ addItems()

template<class T>

void DSRListOfItems< T >::addItems | ( | const OFVector< T > & | items | ) |
| inline

add items to the list

Parameters

  items | items to be added (stored as a vector)

References OFVector< T >::begin(), OFVector< T >::end(), and ItemList.

## ◆ addOnlyNewItem()

template<class T>

void DSRListOfItems< T >::addOnlyNewItem | ( | const T & | item | ) |
| inline

add item to the list only if it's not already contained

Parameters

  item | item to be added

References isElement(), and ItemList.

## ◆ getItem() [1/2]

template<class T>

const T & DSRListOfItems< T >::getItem | ( | const size_t | idx | ) | const
| inline

get reference to the specified item

Parameters

  idx | index of the item to be returned (starting from 1)

Returns
  reference to the specified item if successful, EmptyItem otherwise

References gotoItemPos(), and ItemList.

## ◆ getItem() [2/2]

template<class T>

OFCondition DSRListOfItems< T >::getItem | ( | const size_t | idx,
|  | T & | item ) const
| inline

get copy of the specified item

Parameters

  idx | index of the item to be returned (starting from 1)
  item | reference to a variable where the result should be stored. (not changed/cleared if an error occurs!)

Returns
  status, EC_Normal if successful, an error code otherwise

References EC_IllegalParameter, EC_Normal, gotoItemPos(), and ItemList.

## ◆ getItems()

template<class T>

OFCondition DSRListOfItems< T >::getItems | ( | OFVector< T > & | items | ) | const
| inline

get copy of all items (as a vector)

Parameters

  items | reference to a variable where the result should be stored. (always cleared before items are added)

Returns
  status, EC_Normal if successful, an error code otherwise

References OFVector< T >::clear(), EC_Normal, ItemList, OFVector< T >::push_back(), and OFVector< T >::reserve().

## ◆ getNumberOfItems()

template<class T>

size_t DSRListOfItems< T >::getNumberOfItems | ( |  | ) | const
| inline

get number of items contained in the list

Returns
  number of items if any, 0 otherwise

References ItemList.

## ◆ gotoItem()

template<class T>

OFBool DSRListOfItems< T >::gotoItem | ( | const T & | item,
|  | OFLIST_TYPENAME OFListConstIterator(T) & | iterator ) const
| inline protected

goto specified item

Parameters

  item | value of the item to go to (starting from 1)
  iterator | list iterator storing the position of the item

Returns
  OFTrue if specified item was found, OFFalse otherwise

References ItemList.

Referenced by isElement().

## ◆ gotoItemPos()

template<class T>

OFBool DSRListOfItems< T >::gotoItemPos | ( | size_t | idx,
|  | OFLIST_TYPENAME OFListConstIterator(T) & | iterator ) const
| inline protected

goto specified item position

Parameters

  idx | index of the item to go to (starting from 1)
  iterator | list iterator storing the position of the item

Returns
  OFTrue if specified item was found, OFFalse otherwise

References ItemList.

Referenced by getItem(), getItem(), insertItem(), and removeItem().

## ◆ insertItem()

template<class T>

OFCondition DSRListOfItems< T >::insertItem | ( | const size_t | idx,
|  | const T & | item )
| inline

insert item at specified position to the list

Parameters

  idx | index of the item before the new one should be inserted (starting from 1)
  item | item to be inserted

Returns
  status, EC_Normal if successful, an error code otherwise

References EC_IllegalParameter, EC_Normal, gotoItemPos(), and ItemList.

## ◆ isElement()

template<class T>

OFBool DSRListOfItems< T >::isElement | ( | const T & | item | ) | const
| inline

check whether specified item is contained in the list

Parameters

  item | item to be checked

Returns
  OFTrue if the item is in the list, OFFalse otherwise

References gotoItem(), and ItemList.

Referenced by addOnlyNewItem().

## ◆ isEmpty()

template<class T>

OFBool DSRListOfItems< T >::isEmpty | ( |  | ) | const
| inline

check whether the list is empty

Returns
  OFTrue if the list is empty, OFFalse otherwise

References ItemList.

## ◆ operator!=()

template<class T>

OFBool DSRListOfItems< T >::operator!= | ( | const DSRListOfItems< T > & | lst | ) | const
| inline

comparison operator "not equal"

Parameters

  lst | list that should be compared to the current one

Returns
  OFTrue if both lists are not equal, OFFalse otherwise

References DSRListOfItems(), and ItemList.

## ◆ operator=()

template<class T>

DSRListOfItems< T > & DSRListOfItems< T >::operator= | ( | const DSRListOfItems< T > & | lst | ) |
| inline

assignment operator

Parameters

  lst | list to be copied

Returns
  reference to this list after 'lst' has been copied

References DSRListOfItems(), and ItemList.

## ◆ operator==()

template<class T>

OFBool DSRListOfItems< T >::operator== | ( | const DSRListOfItems< T > & | lst | ) | const
| inline

comparison operator "equal"

Parameters

  lst | list that should be compared to the current one

Returns
  OFTrue if both lists are equal, OFFalse otherwise

References DSRListOfItems(), and ItemList.

## ◆ removeItem()

template<class T>

OFCondition DSRListOfItems< T >::removeItem | ( | const size_t | idx | ) |
| inline

remove item from the list

Parameters

  idx | index of the item to be removed (starting from 1)

Returns
  status, EC_Normal if successful, an error code otherwise

References EC_IllegalParameter, EC_Normal, gotoItemPos(), and ItemList.

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

- dcmsr/include/dcmtk/dcmsr/dsrtlist.h

Generated on Sat Mar 1 2025 for DCMTK Version 3.6.9 by Doxygen 1.13.2