#include <itkMetaDataDictionary.h>
Provides a mechanism for storing a collection of arbitrary data types.
The MetaDataDictionary, along with the MetaDataObject derived template classes, is designed to provide a mechanism for storing a collection of arbitrary data types. The main motivation for such a collection is to associate arbitrary data elements with itk DataObjects.
The MetaDataDictionary implements shallow copying with copy on write behavior. When a copy of this class is created, the new copy will be shared with the old copy via C++11 shared pointers. When a non-constant operation is done, if the dictionary is not unique to this object, then a deep copy is performed. This make is very cheap to create multiple copies of the same dictionary if they are never modified.
Definition at line 54 of file itkMetaDataDictionary.h.
Public Types | |
using | ConstIterator = MetaDataDictionaryMapType::const_iterator |
using | Iterator = MetaDataDictionaryMapType::iterator |
using | MetaDataDictionaryMapType = std::map<std::string, MetaDataObjectBase::Pointer> |
using | Self = MetaDataDictionary |
Public Member Functions | |
void | Clear () |
bool | Erase (const std::string &) |
Iterator | Find (const std::string &key) |
ConstIterator | Find (const std::string &key) const |
const MetaDataObjectBase * | Get (const std::string &) const |
std::vector< std::string > | GetKeys () const |
bool | HasKey (const std::string &) const |
MetaDataDictionary () | |
MetaDataDictionary (const MetaDataDictionary &) | |
MetaDataDictionary (MetaDataDictionary &&)=default | |
MetaDataDictionary & | operator= (const MetaDataDictionary &) |
MetaDataDictionary & | operator= (MetaDataDictionary &&)=default |
MetaDataObjectBase::Pointer & | operator[] (const std::string &) |
const MetaDataObjectBase * | operator[] (const std::string &) const |
virtual void | Print (std::ostream &os) const |
void | Set (const std::string &, MetaDataObjectBase *) |
void | Swap (MetaDataDictionary &other) |
virtual | ~MetaDataDictionary () |
Iterator | Begin () |
ConstIterator | Begin () const |
Iterator | End () |
ConstIterator | End () const |
Private Member Functions | |
bool | MakeUnique () |
Private Attributes | |
std::shared_ptr< MetaDataDictionaryMapType > | m_Dictionary {} |
Friends | |
bool | operator!= (const Self &lhs, const Self &rhs) |
bool | operator== (const Self &lhs, const Self &rhs) |
using itk::MetaDataDictionary::ConstIterator = MetaDataDictionaryMapType::const_iterator |
Definition at line 69 of file itkMetaDataDictionary.h.
using itk::MetaDataDictionary::Iterator = MetaDataDictionaryMapType::iterator |
Definition at line 68 of file itkMetaDataDictionary.h.
using itk::MetaDataDictionary::MetaDataDictionaryMapType = std::map<std::string, MetaDataObjectBase::Pointer> |
Definition at line 67 of file itkMetaDataDictionary.h.
Definition at line 57 of file itkMetaDataDictionary.h.
itk::MetaDataDictionary::MetaDataDictionary | ( | ) |
Referenced by MetaDataDictionary(), MetaDataDictionary(), operator=(), operator=(), and Swap().
itk::MetaDataDictionary::MetaDataDictionary | ( | const MetaDataDictionary & | ) |
References MetaDataDictionary().
|
default |
References MetaDataDictionary().
|
virtual |
Iterator itk::MetaDataDictionary::Begin | ( | ) |
ConstIterator itk::MetaDataDictionary::Begin | ( | ) | const |
void itk::MetaDataDictionary::Clear | ( | ) |
remove all MetaObjects from dictionary
Iterator itk::MetaDataDictionary::End | ( | ) |
Returns an iterator to the end of the map
Referenced by itk::ExposeMetaData().
ConstIterator itk::MetaDataDictionary::End | ( | ) | const |
Returns an iterator to the end of the map
bool itk::MetaDataDictionary::Erase | ( | const std::string & | ) |
Iterator itk::MetaDataDictionary::Find | ( | const std::string & | key | ) |
Returns an iterator matching the string key
Referenced by itk::ExposeMetaData().
ConstIterator itk::MetaDataDictionary::Find | ( | const std::string & | key | ) | const |
const MetaDataObjectBase * itk::MetaDataDictionary::Get | ( | const std::string & | ) | const |
std::vector< std::string > itk::MetaDataDictionary::GetKeys | ( | ) | const |
Returns a vector of keys to the key/value entries in the dictionary. Iterate through the dictionary using these keys.
bool itk::MetaDataDictionary::HasKey | ( | const std::string & | ) | const |
|
private |
MetaDataDictionary & itk::MetaDataDictionary::operator= | ( | const MetaDataDictionary & | ) |
References MetaDataDictionary().
|
default |
References MetaDataDictionary().
MetaDataObjectBase::Pointer & itk::MetaDataDictionary::operator[] | ( | const std::string & | ) |
const MetaDataObjectBase * itk::MetaDataDictionary::operator[] | ( | const std::string & | ) | const |
|
virtual |
Defines the default behavior for printing out this element
os | An output stream |
void itk::MetaDataDictionary::Set | ( | const std::string & | , |
MetaDataObjectBase * | ) |
void itk::MetaDataDictionary::Swap | ( | MetaDataDictionary & | other | ) |
References MetaDataDictionary().
Returns (metaDataDictionary1 != metaDataDictionary2).
Definition at line 108 of file itkMetaDataDictionary.h.
Returns (metaDataDictionary1 == metaDataDictionary2).
Definition at line 87 of file itkMetaDataDictionary.h.
References m_Dictionary.
|
private |
Definition at line 183 of file itkMetaDataDictionary.h.
Referenced by operator==.