XII Release 0.1.0
Loading...
Searching...
No Matches
xiiAbstractMapProperty Class Referenceabstract

The base class for a property that represents a set of values. More...

#include <AbstractProperty.h>

Inheritance diagram for xiiAbstractMapProperty:
[legend]

Public Member Functions

 xiiAbstractMapProperty (xiiStringView sPropertyName)
 Passes the property name through to xiiAbstractProperty.
 
virtual xiiPropertyCategory::Enum GetCategory () const override
 Returns xiiPropertyCategory::Map.
 
virtual bool IsEmpty (const void *pInstance) const =0
 Returns whether the set is empty.
 
virtual void Clear (void *pInstance) const =0
 Clears the set.
 
virtual void Insert (void *pInstance, xiiStringView sKey, const void *pObject) const =0
 Inserts the target of pObject into the set.
 
virtual void Remove (void *pInstance, xiiStringView sKey) const =0
 Removes the target of pObject from the set.
 
virtual bool Contains (const void *pInstance, xiiStringView sKey) const =0
 Returns whether the target of pObject is in the set.
 
virtual bool GetValue (const void *pInstance, xiiStringView sKey, void *pObject) const =0
 Writes element at index uiIndex to the target of pObject.
 
virtual void GetKeys (const void *pInstance, xiiHybridArray< xiiString, 16 > &out_keys) const =0
 Writes the content of the set to out_keys.
 
- Public Member Functions inherited from xiiAbstractProperty
 xiiAbstractProperty (xiiStringView sPropertyName)
 The constructor must get the name of the property. The string must be a compile-time constant.
 
xiiStringView GetPropertyName () const
 Returns the name of the property.
 
virtual const xiiRTTIGetSpecificType () const =0
 Returns the type information of the constant property. Use this to cast this property to a specific version of xiiTypedConstantProperty.
 
const xiiBitflags< xiiPropertyFlags > & GetFlags () const
 Returns the flags of the property.
 
xiiAbstractPropertyAddFlags (xiiBitflags< xiiPropertyFlags > flags)
 Adds flags to the property. Returns itself to allow to be called during initialization.
 
xiiAbstractPropertyAddAttributes (xiiPropertyAttribute *pAttrib1, xiiPropertyAttribute *pAttrib2=nullptr, xiiPropertyAttribute *pAttrib3=nullptr, xiiPropertyAttribute *pAttrib4=nullptr, xiiPropertyAttribute *pAttrib5=nullptr, xiiPropertyAttribute *pAttrib6=nullptr)
 Adds attributes to the property. Returns itself to allow to be called during initialization. Allocate an attribute using standard 'new'.
 
xiiArrayPtr< const xiiPropertyAttribute *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 xiiAbstractProperty
xiiBitflags< xiiPropertyFlagsm_Flags
 
xiiStringView m_sPropertyName
 
xiiHybridArray< const xiiPropertyAttribute *, 2U, xiiStaticAllocatorWrapperm_Attributes
 

Detailed Description

The base class for a property that represents a set of values.

The element type must either be a standard type or a pointer.

Member Function Documentation

◆ Clear()

virtual void xiiAbstractMapProperty::Clear ( void * pInstance) const
pure virtual

◆ Contains()

virtual bool xiiAbstractMapProperty::Contains ( const void * pInstance,
xiiStringView sKey ) const
pure virtual

◆ GetCategory()

virtual xiiPropertyCategory::Enum xiiAbstractMapProperty::GetCategory ( ) const
inlineoverridevirtual

◆ GetKeys()

virtual void xiiAbstractMapProperty::GetKeys ( const void * pInstance,
xiiHybridArray< xiiString, 16 > & out_keys ) const
pure virtual

◆ GetValue()

virtual bool xiiAbstractMapProperty::GetValue ( const void * pInstance,
xiiStringView sKey,
void * pObject ) const
pure virtual

◆ Insert()

virtual void xiiAbstractMapProperty::Insert ( void * pInstance,
xiiStringView sKey,
const void * pObject ) const
pure virtual

◆ IsEmpty()

virtual bool xiiAbstractMapProperty::IsEmpty ( const void * pInstance) const
pure virtual

◆ Remove()

virtual void xiiAbstractMapProperty::Remove ( void * pInstance,
xiiStringView sKey ) const
pure virtual

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