ezEngine  Milestone 7
ezAccessorArrayProperty< Class, Type > Class Template Reference
Inheritance diagram for ezAccessorArrayProperty< Class, Type >:

Public Types

typedef ezTypeTraits< Type >
typedef ezUInt32(Class::* GetCountFunc )() const
typedef Type(Class::* GetValueFunc )(ezUInt32 uiIndex) const
typedef void(Class::* SetValueFunc )(ezUInt32 uiIndex, Type value)
typedef void(Class::* InsertFunc )(ezUInt32 uiIndex, Type value)
typedef void(Class::* RemoveFunc )(ezUInt32 uiIndex)

Public Member Functions

 ezAccessorArrayProperty (const char *szPropertyName, GetCountFunc getCount, GetValueFunc getter, SetValueFunc setter, InsertFunc insert, RemoveFunc remove)
virtual ezUInt32 GetCount (const void *pInstance) const override
 Returns number of elements.
virtual void GetValue (const void *pInstance, ezUInt32 uiIndex, void *pObject) const override
 Writes element at index uiIndex to the target of pObject.
virtual void SetValue (void *pInstance, ezUInt32 uiIndex, const void *pObject) override
 Writes the target of pObject to the element at index uiIndex.
virtual void Insert (void *pInstance, ezUInt32 uiIndex, void *pObject) override
 Inserts the target of pObject into the array at index uiIndex.
virtual void Remove (void *pInstance, ezUInt32 uiIndex) override
 Removes the element in the array at index uiIndex.
virtual void Clear (void *pInstance) override
 Clears the array.
virtual void SetCount (void *pInstance, ezUInt32 uiCount) override
 Resizes the array to uiCount.
- Public Member Functions inherited from ezTypedArrayProperty< Type >
 ezTypedArrayProperty (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 ezAbstractArrayProperty
 ezAbstractArrayProperty (const char *szPropertyName)
 Passes the property name through to ezAbstractProperty.
virtual ezPropertyCategory::Enum GetCategory () const override
 Returns ezPropertyCategory::Array.
- 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'.
const ezArrayPtr
< 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.

Private Attributes

GetCountFunc m_GetCount
GetValueFunc m_Getter
SetValueFunc m_Setter
InsertFunc m_Insert
RemoveFunc m_Remove

Additional Inherited Members

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

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