Plasma Engine  2.0
Loading...
Searching...
No Matches
plAbstractArrayProperty Class Referenceabstract

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

#include <AbstractProperty.h>

Inheritance diagram for plAbstractArrayProperty:

Public Member Functions

 plAbstractArrayProperty (const char *szPropertyName)
 Passes the property name through to plAbstractProperty.
 
virtual plPropertyCategory::Enum GetCategory () const override
 Returns plPropertyCategory::Array.
 
virtual plUInt32 GetCount (const void *pInstance) const =0
 Returns number of elements.
 
virtual void GetValue (const void *pInstance, plUInt32 uiIndex, void *pObject) const =0
 Writes element at index uiIndex to the target of pObject.
 
virtual void SetValue (void *pInstance, plUInt32 uiIndex, const void *pObject) const =0
 Writes the target of pObject to the element at index uiIndex.
 
virtual void Insert (void *pInstance, plUInt32 uiIndex, const void *pObject) const =0
 Inserts the target of pObject into the array at index uiIndex.
 
virtual void Remove (void *pInstance, plUInt32 uiIndex) const =0
 Removes the element in the array at index uiIndex.
 
virtual void Clear (void *pInstance) const =0
 Clears the array.
 
virtual void SetCount (void *pInstance, plUInt32 uiCount) const =0
 Resizes the array to uiCount.
 
virtual void * GetValuePointer (void *pInstance, plUInt32 uiIndex) const
 
- Public Member Functions inherited from plAbstractProperty
 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 plRTTIGetSpecificType () 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.
 
plAbstractPropertyAddFlags (plBitflags< plPropertyFlags > flags)
 Adds flags to the property. Returns itself to allow to be called during initialization.
 
plAbstractPropertyAddAttributes (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

- Protected Attributes inherited from plAbstractProperty
plBitflags< plPropertyFlagsm_Flags
 
const char * m_szPropertyName
 
plHybridArray< const plPropertyAttribute *, 2, plStaticsAllocatorWrapperm_Attributes
 

Detailed Description

The base class for a property that represents an array of values.

Member Function Documentation

◆ Clear()

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

◆ GetCategory()

virtual plPropertyCategory::Enum plAbstractArrayProperty::GetCategory ( ) const
inlineoverridevirtual

◆ GetCount()

virtual plUInt32 plAbstractArrayProperty::GetCount ( const void * pInstance) const
pure virtual

◆ GetValue()

virtual void plAbstractArrayProperty::GetValue ( const void * pInstance,
plUInt32 uiIndex,
void * pObject ) const
pure virtual

◆ Insert()

virtual void plAbstractArrayProperty::Insert ( void * pInstance,
plUInt32 uiIndex,
const void * pObject ) const
pure virtual

◆ Remove()

virtual void plAbstractArrayProperty::Remove ( void * pInstance,
plUInt32 uiIndex ) const
pure virtual

◆ SetCount()

virtual void plAbstractArrayProperty::SetCount ( void * pInstance,
plUInt32 uiCount ) const
pure virtual

◆ SetValue()

virtual void plAbstractArrayProperty::SetValue ( void * pInstance,
plUInt32 uiIndex,
const void * pObject ) const
pure virtual

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