ezEngine Release 25.08
Loading...
Searching...
No Matches
ezMemberMapProperty< Class, Container, Type > Class Template Reference
Inheritance diagram for ezMemberMapProperty< Class, Container, Type >:

Public Types

using RealType = typename ezTypeTraits< Type >::NonConstReferenceType
 
using GetConstContainerFunc = const Container &(*)(const Class *pInstance)
 
using GetContainerFunc = Container &(*)(Class *pInstance)
 

Public Member Functions

 ezMemberMapProperty (const char *szPropertyName, GetConstContainerFunc constGetter, GetContainerFunc getter)
 
virtual bool IsEmpty (const void *pInstance) const override
 Returns whether the set is empty.
 
virtual void Clear (void *pInstance) const override
 Clears the set.
 
virtual void Insert (void *pInstance, const char *szKey, const void *pObject) const override
 Inserts the target of pObject into the set.
 
virtual void Remove (void *pInstance, const char *szKey) const override
 Removes the target of pObject from the set.
 
virtual bool Contains (const void *pInstance, const char *szKey) const override
 Returns whether the target of pObject is in the set.
 
virtual bool GetValue (const void *pInstance, const char *szKey, void *pObject) const override
 Writes element at index uiIndex to the target of pObject.
 
virtual void GetKeys (const void *pInstance, ezHybridArray< ezString, 16 > &out_keys) const override
 Writes the content of the set to out_keys.
 
- Public Member Functions inherited from ezTypedMapProperty< ezTypeTraits< Type >::NonConstReferenceType >
 ezTypedMapProperty (const char *szPropertyName)
 
virtual const ezRTTIGetSpecificType () const override
 Returns the type information of the constant property. Use this to cast this property to a specific version of ezTypedConstantProperty.
 
- Public Member Functions inherited from ezAbstractMapProperty
 ezAbstractMapProperty (const char *szPropertyName)
 Passes the property name through to ezAbstractProperty.
 
virtual ezPropertyCategory::Enum GetCategory () const override
 Returns ezPropertyCategory::Map.
 
- Public Member Functions inherited from ezAbstractProperty
 ezAbstractProperty (const char *szPropertyName)
 The constructor must get the name of the property. The string must be a compile-time constant.
 
const char * GetPropertyName () const
 Returns the name of the property.
 
const ezBitflags< ezPropertyFlags > & GetFlags () const
 Returns the flags of the property.
 
ezAbstractPropertyAddFlags (ezBitflags< ezPropertyFlags > flags)
 Adds flags to the property. Returns itself to allow to be called during initialization.
 
ezAbstractPropertyAddAttributes (ezPropertyAttribute *pAttrib1, ezPropertyAttribute *pAttrib2=nullptr, ezPropertyAttribute *pAttrib3=nullptr, ezPropertyAttribute *pAttrib4=nullptr, ezPropertyAttribute *pAttrib5=nullptr, ezPropertyAttribute *pAttrib6=nullptr)
 Adds attributes to the property. Returns itself to allow to be called during initialization. Allocate an attribute using standard 'new'.
 
ezArrayPtr< const ezPropertyAttribute *const > GetAttributes () const
 Returns the array of property attributes.
 
template<typename Type >
const Type * GetAttributeByType () const
 Returns the first attribute that derives from the given type, or nullptr if nothing is found.
 

Additional Inherited Members

- Protected Attributes inherited from ezAbstractProperty
ezBitflags< ezPropertyFlagsm_Flags
 
const char * m_szPropertyName
 
ezHybridArray< const ezPropertyAttribute *, 2, ezStaticsAllocatorWrapperm_Attributes
 

Member Function Documentation

◆ Clear()

template<typename Class , typename Container , typename Type >
virtual void ezMemberMapProperty< Class, Container, Type >::Clear ( void *  pInstance) const
inlineoverridevirtual

Clears the set.

Implements ezAbstractMapProperty.

◆ Contains()

template<typename Class , typename Container , typename Type >
virtual bool ezMemberMapProperty< Class, Container, Type >::Contains ( const void *  pInstance,
const char *  szKey 
) const
inlineoverridevirtual

Returns whether the target of pObject is in the set.

Implements ezAbstractMapProperty.

◆ GetKeys()

template<typename Class , typename Container , typename Type >
virtual void ezMemberMapProperty< Class, Container, Type >::GetKeys ( const void *  pInstance,
ezHybridArray< ezString, 16 > &  out_keys 
) const
inlineoverridevirtual

Writes the content of the set to out_keys.

Implements ezAbstractMapProperty.

◆ GetValue()

template<typename Class , typename Container , typename Type >
virtual bool ezMemberMapProperty< Class, Container, Type >::GetValue ( const void *  pInstance,
const char *  szKey,
void *  pObject 
) const
inlineoverridevirtual

Writes element at index uiIndex to the target of pObject.

Implements ezAbstractMapProperty.

◆ Insert()

template<typename Class , typename Container , typename Type >
virtual void ezMemberMapProperty< Class, Container, Type >::Insert ( void *  pInstance,
const char *  szKey,
const void *  pObject 
) const
inlineoverridevirtual

Inserts the target of pObject into the set.

Implements ezAbstractMapProperty.

◆ IsEmpty()

template<typename Class , typename Container , typename Type >
virtual bool ezMemberMapProperty< Class, Container, Type >::IsEmpty ( const void *  pInstance) const
inlineoverridevirtual

Returns whether the set is empty.

Implements ezAbstractMapProperty.

◆ Remove()

template<typename Class , typename Container , typename Type >
virtual void ezMemberMapProperty< Class, Container, Type >::Remove ( void *  pInstance,
const char *  szKey 
) const
inlineoverridevirtual

Removes the target of pObject from the set.

Implements ezAbstractMapProperty.


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