DCMTK: OFMap< K, V > Class Template Reference

DCMTK Version 3.6.9 OFFIS DICOM Toolkit

Loading...
Searching...
No Matches
Public Types | Public Member Functions | Protected Attributes | List of all members
OFMap< K, V > Class Template Reference

associative container class. More...

## Public Types
typedef OFPair< const K, V > | value_type
| the type of values saved in this map

## Public Member Functions
typedef | OFListIterator (value_type) iterator
| iterator class for OFMap.
typedef | OFListConstIterator (value_type) const _iterator
| constant iterator class for OFMap.
| OFMap ()
| default constructor
OFMap & | operator= (const OFMap &other)
| assignment operator
V & | operator[] (const K &key)
| index operator.
iterator | begin ()
| returns iterator pointing to the first element of this map
iterator | end ()
| returns iterator pointer after the last element of this map
const_iterator | begin () const
| returns constant iterator pointing to the first element of this map
const_iterator | end () const
| returns constant iterator pointer after the last element of this map
iterator | find (const K &key)
| looks up the given key in this map
const_iterator | find (const K &key) const
| looks up the given key in this map
OFBool | empty () const
| returns whether this map is empty (i.e. whether its size is 0)
size_t | size () const
| returns the number of elements saved in this map
void | clear ()
| removes all elements from this map
void | erase (const iterator &first, const iterator &last)
| removes all elements in the given range from this map
void | erase (const iterator &elem)
| removes the element to which the given iterator points to
int | erase (const K &key)
| removes the element with the given key from this map
OFPair< iterator, bool > | insert (const value_type &val)
| inserts a new element into the map, but does not overwrite existing elements
void | swap (OFMap< K, V > &s)
| swaps the contents of the two maps.

## Protected Attributes
OFList< value_type > | values_

## Detailed Description

template<typename K, typename V>
class OFMap< K, V >

associative container class.

This class is a subset of std::map.

## Member Function Documentation

## ◆ begin() [1/2]

template<typename K, typename V>

iterator OFMap< K, V >::begin | ( |  | ) |
| inline

returns iterator pointing to the first element of this map

Returns
  iterator pointing to the first element of this map

Referenced by OFMap< OFString, OFCharacterEncoding >::find(), OFMap< OFString, OFCharacterEncoding >::find(), OFMap< OFString, OFCharacterEncoding >::insert(), and OFMap< OFString, OFCharacterEncoding >::operator=().

## ◆ begin() [2/2]

template<typename K, typename V>

const_iterator OFMap< K, V >::begin | ( |  | ) | const
| inline

returns constant iterator pointing to the first element of this map

Returns
  constant iterator pointing to the first element of this map

## ◆ empty()

template<typename K, typename V>

OFBool OFMap< K, V >::empty | ( |  | ) | const
| inline

returns whether this map is empty (i.e. whether its size is 0)

Returns
  OFTrue if this map is empty, OFFalse otherwise

## ◆ end() [1/2]

template<typename K, typename V>

iterator OFMap< K, V >::end | ( |  | ) |
| inline

returns iterator pointer after the last element of this map

Returns
  iterator pointer after the last element of this map

Referenced by OFMap< OFString, OFCharacterEncoding >::erase(), OFMap< OFString, OFCharacterEncoding >::find(), OFMap< OFString, OFCharacterEncoding >::find(), OFMap< OFString, OFCharacterEncoding >::insert(), OFMap< OFString, OFCharacterEncoding >::operator=(), and OFMap< OFString, OFCharacterEncoding >::operator[]().

## ◆ end() [2/2]

template<typename K, typename V>

const_iterator OFMap< K, V >::end | ( |  | ) | const
| inline

returns constant iterator pointer after the last element of this map

Returns
  constant iterator pointer after the last element of this map

## ◆ erase() [1/3]

template<typename K, typename V>

void OFMap< K, V >::erase | ( | const iterator & | elem | ) |
| inline

removes the element to which the given iterator points to

Parameters

  elem | the element to remove

## ◆ erase() [2/3]

template<typename K, typename V>

void OFMap< K, V >::erase | ( | const iterator & | first,
|  | const iterator & | last )
| inline

removes all elements in the given range from this map

Parameters

  first | the first element to remove
  last | the first element NOT to remove

## ◆ erase() [3/3]

template<typename K, typename V>

int OFMap< K, V >::erase | ( | const K & | key | ) |
| inline

removes the element with the given key from this map

Returns
  the number of elements removed (0 or 1)

## ◆ find() [1/2]

template<typename K, typename V>

iterator OFMap< K, V >::find | ( | const K & | key | ) |
| inline

looks up the given key in this map

Parameters

  key | the key to look for

Returns
  iterator for that key to end()

Referenced by OFMap< OFString, OFCharacterEncoding >::erase(), OFMap< OFString, OFCharacterEncoding >::insert(), and OFMap< OFString, OFCharacterEncoding >::operator[]().

## ◆ find() [2/2]

template<typename K, typename V>

const_iterator OFMap< K, V >::find | ( | const K & | key | ) | const
| inline

looks up the given key in this map

Parameters

  key | the key to look for

Returns
  constant iterator for that key to end()

## ◆ insert()

template<typename K, typename V>

OFPair< iterator, bool > OFMap< K, V >::insert | ( | const value_type & | val | ) |
| inline

inserts a new element into the map, but does not overwrite existing elements

Parameters

  val | the value to insert

Returns
  a pair of an iterator and a boolean. The iterator always points to the element which got val's key. The boolean is true if val was inserted, false otherwise.

Referenced by OFMap< OFString, OFCharacterEncoding >::operator=(), and OFMap< OFString, OFCharacterEncoding >::operator[]().

## ◆ OFListConstIterator()

template<typename K, typename V>

typedef OFMap< K, V >::OFListConstIterator | ( | value_type |  | ) | const

constant iterator class for OFMap.

You can read the elements, but you may not modify them.

## ◆ OFListIterator()

template<typename K, typename V>

typedef OFMap< K, V >::OFListIterator | ( | value_type |  | ) |

iterator class for OFMap.

You can modify elements through this iterator's ->first and ->second properties.

## ◆ operator[]()

template<typename K, typename V>

V & OFMap< K, V >::operator[] | ( | const K & | key | ) |
| inline

index operator.

You can use this to add new elements to the map. Beware: Don't use this for checking if a given key is already used in the map, use find() != end() for this job!

Parameters

  key | the key you want to access

Returns
  reference to the value saved under the given key.

## ◆ size()

template<typename K, typename V>

size_t OFMap< K, V >::size | ( |  | ) | const
| inline

returns the number of elements saved in this map

Returns
  the number of elements saved in this map

## ◆ swap()

template<typename K, typename V>

void OFMap< K, V >::swap | ( | OFMap< K, V > & | s | ) |
| inline

swaps the contents of the two maps.

The time complexity of this function should be constant.

Parameters

  s | map to swap with

## Member Data Documentation

## ◆ values_

template<typename K, typename V>

OFList<value_type> OFMap< K, V >::values_
| protected

Todo
  using a list as base is slooooow

Referenced by OFMap< OFString, OFCharacterEncoding >::swap().

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

- ofstd/include/dcmtk/ofstd/ofmap.h

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