![]() |
Plasma Engine
2.0
|
The base class for a property that represents a set of values. More...
#include <AbstractProperty.h>
Public Member Functions | |
plAbstractMapProperty (const char *szPropertyName) | |
Passes the property name through to plAbstractProperty. | |
virtual plPropertyCategory::Enum | GetCategory () const override |
Returns plPropertyCategory::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, const char *szKey, const void *pObject) const =0 |
Inserts the target of pObject into the set. | |
virtual void | Remove (void *pInstance, const char *szKey) const =0 |
Removes the target of pObject from the set. | |
virtual bool | Contains (const void *pInstance, const char *szKey) const =0 |
Returns whether the target of pObject is in the set. | |
virtual bool | GetValue (const void *pInstance, const char *szKey, void *pObject) const =0 |
Writes element at index uiIndex to the target of pObject. | |
virtual void | GetKeys (const void *pInstance, plHybridArray< plString, 16 > &out_keys) const =0 |
Writes the content of the set to out_keys. | |
![]() | |
plAbstractProperty (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. | |
virtual const plRTTI * | GetSpecificType () const =0 |
Returns the type information of the constant property. Use this to cast this property to a specific version of plTypedConstantProperty. | |
const plBitflags< plPropertyFlags > & | GetFlags () const |
Returns the flags of the property. | |
plAbstractProperty * | AddFlags (plBitflags< plPropertyFlags > flags) |
Adds flags to the property. Returns itself to allow to be called during initialization. | |
plAbstractProperty * | AddAttributes (plPropertyAttribute *pAttrib1, plPropertyAttribute *pAttrib2=nullptr, plPropertyAttribute *pAttrib3=nullptr, plPropertyAttribute *pAttrib4=nullptr, plPropertyAttribute *pAttrib5=nullptr, plPropertyAttribute *pAttrib6=nullptr) |
Adds attributes to the property. Returns itself to allow to be called during initialization. Allocate an attribute using standard 'new'. | |
plArrayPtr< const plPropertyAttribute *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 | |
![]() | |
plBitflags< plPropertyFlags > | m_Flags |
const char * | m_szPropertyName |
plHybridArray< const plPropertyAttribute *, 2, plStaticsAllocatorWrapper > | m_Attributes |
The base class for a property that represents a set of values.
The element type must either be a standard type or a pointer.
|
pure virtual |
Clears the set.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.
|
pure virtual |
Returns whether the target of pObject is in the set.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.
|
inlineoverridevirtual |
Returns plPropertyCategory::Map.
Implements plAbstractProperty.
|
pure virtual |
Writes the content of the set to out_keys.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.
|
pure virtual |
Writes element at index uiIndex to the target of pObject.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.
|
pure virtual |
Inserts the target of pObject into the set.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.
|
pure virtual |
Returns whether the set is empty.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.
|
pure virtual |
Removes the target of pObject from the set.
Implemented in plAccessorMapProperty< Class, Type, Container >, plMemberMapProperty< Class, Container, Type >, plPhantomMapProperty, and plWriteAccessorMapProperty< Class, Type, Container >.