Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Serialize::IDataContainer::IAssociativeDataContainer Class Referenceabstract

Mix-in for associative container actions, implement or provide this to offer key/value actions. More...

#include <SerializeContext.h>

Inherited by AZ::Internal::AZStdAssociativeContainer< AZStd::map >, AZ::Internal::AZStdAssociativeContainer< AZStd::set >, AZ::Internal::AZStdAssociativeContainer< AZStd::unordered_map >, AZ::Internal::AZStdAssociativeContainer< AZStd::unordered_multimap >, AZ::Internal::AZStdAssociativeContainer< AZStd::unordered_multiset >, AZ::Internal::AZStdAssociativeContainer< AZStd::unordered_set >, and AZ::Internal::AZStdAssociativeContainer< T >.

Classes

struct  KeyPtrDeleter
 

Public Member Functions

 AZ_TYPE_INFO_WITH_NAME_DECL (IAssociativeDataContainer)
 
AZStd::shared_ptr< void > CreateKey ()
 Reserve a key that can be used for associative container operations.
 
virtual void * GetElementByKey (void *instance, const ClassElement *classElement, const void *key)=0
 Get an element's address by its key. Not used for serialization.
 
virtual void SetElementKey (void *element, void *key)=0
 Populates element with key (for associative containers). Not used for serialization.
 
virtual void * GetValueByKey (void *instance, const void *key)=0
 Get the mapped value's address by its key. If there is no mapped value (like in a set<>) the value returned is the key itself.
 

Protected Member Functions

virtual void * AllocateKey ()=0
 Reserve a key and get its address. Used by CreateKey.
 
virtual void FreeKey (void *key)=0
 Deallocates a key created by ReserveKey. Used by CreateKey.
 

Detailed Description

Mix-in for associative container actions, implement or provide this to offer key/value actions.


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