#include <datadictionaryobject.h>

Class to store and find any data type under any type of key.
Public Types | |
| using | Iterator = DataDictionaryIterator | 
| using | ConstIterator = DataDictionaryIterator | 
Public Member Functions | |
| MAXON_METHOD Result< void > | SetData (ForwardingDataPtr &&key, Data &&data) | 
| MAXON_FUNCTION Result< void > | SetData (ForwardingDataPtr &&key, const Data &data) | 
| MAXON_METHOD Result< Data > | GetData (const ConstDataPtr &key) const | 
| template<typename KEY > | |
| MAXON_FUNCTION Bool | Existing (KEY &&key) const | 
| MAXON_METHOD Result< void > | EraseData (const ConstDataPtr &key) | 
| MAXON_METHOD void | Reset () | 
| MAXON_METHOD Bool | IsEmpty () const | 
| MAXON_FUNCTION Bool | IsPopulated () const | 
| template<typename REFCLASS , typename T = void, typename KEY > | |
| MAXON_FUNCTION Result< typename std::conditional< IsFidClass< KEY >::value, typename IsFidClass< KEY >::type, T >::type > | Get (KEY &&key) const | 
| template<typename REFCLASS , typename T , typename KEY > | |
| MAXON_FUNCTION std::conditional< IsFidClass< KEY >::value, typename IsFidClass< KEY >::type, T >::type | Get (KEY &&key, const T &defaultValue) const | 
| template<typename REFCLASS , typename T , typename KEY > | |
| MAXON_FUNCTION std::conditional< IsFidClass< KEY >::value, typename IsFidClass< KEY >::type, T >::type | Get (KEY &&key, T &&defaultValue) const | 
| template<typename KEY > | |
| MAXON_FUNCTION IsFidClass< KEY >::type | GetOrDefault (KEY &&key) const | 
| template<typename REFCLASS , typename T , typename KEY > | |
| MAXON_FUNCTION Result< void > | Set (KEY &&key, T &&data) | 
| template<typename REFCLASS , typename KEY > | |
| MAXON_FUNCTION Result< void > | Erase (KEY &&key) | 
| MAXON_METHOD void | InitIterator (DataDictionaryIteratorInterface *iterator, Bool end) const | 
| MAXON_FUNCTION ConstIterator | Begin () const | 
| MAXON_FUNCTION ConstIterator | End () const | 
| template<typename KEY > | |
| IsFidClass< KEY >::type | GetOrDefault (KEY &&key) const | 
Private Member Functions | |
| MAXON_INTERFACE (DataDictionaryObjectInterface, MAXON_REFERENCE_NORMAL, "net.maxon.interface.datadictionaryobject") | |
| using Iterator = DataDictionaryIterator | 
| using ConstIterator = DataDictionaryIterator | 
      
  | 
  private | 
| MAXON_METHOD Result<void> SetData | ( | ForwardingDataPtr && | key, | 
| Data && | data | ||
| ) | 
| MAXON_FUNCTION Result<void> SetData | ( | ForwardingDataPtr && | key, | 
| const Data & | data | ||
| ) | 
| MAXON_METHOD Result<Data> GetData | ( | const ConstDataPtr & | key | ) | const | 
| MAXON_FUNCTION Bool Existing | ( | KEY && | key | ) | const | 
Check if there is data stored under a specific key.
| [in] | key | Key under which the data should be stored. | 
| MAXON_METHOD Result<void> EraseData | ( | const ConstDataPtr & | key | ) | 
Remove a data entry from the dictionary. This function doesn't check if the dictionary contained the key.
| [in] | key | Id under which the data is stored. | 
| MAXON_METHOD void Reset | ( | ) | 
Frees the entire dictionary. After this call the DataDictionary is empty.
| MAXON_METHOD Bool IsEmpty | ( | ) | const | 
Checks if the dictionary is empty.
| MAXON_FUNCTION Bool IsPopulated | ( | void | ) | const | 
Checks if the dictionary contains anything.
| MAXON_FUNCTION Result<typename std::conditional<IsFidClass<KEY>::value, typename IsFidClass<KEY>::type, T>::type> Get | ( | KEY && | key | ) | const | 
Get data stored under a specific key. If the key is not found an error will be returned. This functions offers 2 possible calls. First using an FId "dict.Get(MAXCHINEINFO::COMPUTERNAME)" or second using any type directly together with the result type "dict.Get<String>(Int32(5))". The data type needs to be registered.
| [in] | key | Key under which the data is stored. | 
| MAXON_FUNCTION std::conditional<IsFidClass<KEY>::value, typename IsFidClass<KEY>::type, T>::type Get | ( | KEY && | key, | 
| const T & | defaultValue | ||
| ) | const | 
Get data stored under a specific key. If the key is not found the given default value will be returned. This functions offers 2 possible calls. First using an FId "dict.Get(MAXCHINEINFO::COMPUTERNAME, String())" or second using any type directly together with the result type "dict.Get(Int32(5), String())". The data type needs to be registered.
| [in] | key | Key under which the data is stored. | 
| [in] | defaultValue | Default value which should be returned if the key cannot be found. | 
| MAXON_FUNCTION std::conditional<IsFidClass<KEY>::value, typename IsFidClass<KEY>::type, T>::type Get | ( | KEY && | key, | 
| T && | defaultValue | ||
| ) | const | 
Get data stored under a specific key. If the key is not found the given default value will be returned. This functions offers 2 possible calls. First using an FId "dict.Get(MAXCHINEINFO::COMPUTERNAME, String())" or second using any type directly together with the result type "dict.Get(Int32(5), String())". The data type needs to be registered.
| [in] | key | Key under which the data is stored. | 
| [in] | defaultValue | Default value which should be returned if the key cannot be found. | 
| MAXON_FUNCTION IsFidClass<KEY>::type GetOrDefault | ( | KEY && | key | ) | const | 
Get data stored under a specific key. If the key is not found the given default value will be returned. This functions offers 2 possible calls. First using an FId "dict.Get(MAXCHINEINFO::COMPUTERNAME, String())" or second using any type directly together with the result type "dict.Get(Int32(5), String())". The data type needs to be registered.
| [in] | key | Key under which the data is stored. | 
| MAXON_FUNCTION Result<void> Set | ( | KEY && | key, | 
| T && | data | ||
| ) | 
Set data under a specific id. this function is template to allow implicit Set calls for each data type. This functions offers 2 possible calls. First using an FId "dict.Set(MAXCHINEINFO::COMPUTERNAME, "data"_s)" or second using any type directly "dict.Set(Int32(5), "data"_s)". The data type needs to be registered.
| [in] | key | Key under which the data is stored. | 
| [in] | data | Data to be stored in the dictionary. | 
| MAXON_FUNCTION Result<void> Erase | ( | KEY && | key | ) | 
Erase data stored under a specific key. This function doesn't check if the dictionary contained the key. This functions offers 2 possible calls. First using an FId "dict.Erase(MAXCHINEINFO::COMPUTERNAME)" or second using any type directly "dict.Erase(Int32(5))". The data type needs to be registered.
| [in] | key | Key under which the data is stored. | 
| MAXON_METHOD void InitIterator | ( | DataDictionaryIteratorInterface * | iterator, | 
| Bool | end | ||
| ) | const | 
Helper functions for iterator.
| MAXON_FUNCTION ConstIterator Begin | ( | ) | const | 
Returns the begin iterator of the DataDictionary. You can use the Iterator to run through all elements of the DataDictionary.
| MAXON_FUNCTION ConstIterator End | ( | ) | const | 
Returns the end iterator of the DataDictionary. You can use the Iterator to run through all elements of the DataDictionary.