![]() |
ezEngine Release 25.08
|
The base class for all typed member properties. I.e. once the type of a property is determined, it can be cast to the proper version of this. More...
#include <MemberProperty.h>

Public Member Functions | |
| ezTypedMemberProperty (const char *szPropertyName) | |
| Passes the property name through to ezAbstractMemberProperty. | |
| virtual const ezRTTI * | GetSpecificType () const override |
| Returns the actual type of the property. You can then compare that with known types, eg. compare it to ezGetStaticRTTI<int>() to see whether this is an int property. | |
| virtual Type | GetValue (const void *pInstance) const =0 |
| Returns the value of the property. Pass the instance pointer to the surrounding class along. | |
| virtual void | SetValue (void *pInstance, Type value) const =0 |
| Modifies the value of the property. Pass the instance pointer to the surrounding class along. | |
| virtual void | GetValuePtr (const void *pInstance, void *pObject) const override |
| Writes the value of this property in pInstance to pObject. pObject needs to point to an instance of this property's type. | |
| virtual void | SetValuePtr (void *pInstance, const void *pObject) const override |
| Sets the value of pObject to the property in pInstance. pObject needs to point to an instance of this property's type. | |
Public Member Functions inherited from ezAbstractMemberProperty | |
| ezAbstractMemberProperty (const char *szPropertyName) | |
| Passes the property name through to ezAbstractProperty. | |
| virtual ezPropertyCategory::Enum | GetCategory () const override |
| Returns ezPropertyCategory::Member. | |
| virtual void * | GetPropertyPointer (const void *pInstance) const =0 |
| Returns a pointer to the property data or nullptr. If a valid pointer is returned, that pointer and the information from GetSpecificType() can be used to step deeper into the type (if required). | |
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. | |
| ezAbstractProperty * | AddFlags (ezBitflags< ezPropertyFlags > flags) |
| Adds flags to the property. Returns itself to allow to be called during initialization. | |
| ezAbstractProperty * | AddAttributes (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< ezPropertyFlags > | m_Flags |
| const char * | m_szPropertyName |
| ezHybridArray< const ezPropertyAttribute *, 2, ezStaticsAllocatorWrapper > | m_Attributes |
The base class for all typed member properties. I.e. once the type of a property is determined, it can be cast to the proper version of this.
For example, when you have a pointer to an ezAbstractMemberProperty and it returns that the property is of type 'int', you can cast the pointer to an pointer to ezTypedMemberProperty<int> which then allows you to access its values.
|
inlineoverridevirtual |
Returns the actual type of the property. You can then compare that with known types, eg. compare it to ezGetStaticRTTI<int>() to see whether this is an int property.
Implements ezAbstractProperty.
|
pure virtual |
Returns the value of the property. Pass the instance pointer to the surrounding class along.
Implemented in ezResourceAccessorProperty< Class, Type >, ezAccessorProperty< Class, Type >, and ezMemberProperty< Class, Type >.
|
inlineoverridevirtual |
Writes the value of this property in pInstance to pObject. pObject needs to point to an instance of this property's type.
Implements ezAbstractMemberProperty.
|
pure virtual |
Modifies the value of the property. Pass the instance pointer to the surrounding class along.
Implemented in ezResourceAccessorProperty< Class, Type >, and ezMemberProperty< Class, Type >.
|
inlineoverridevirtual |
Sets the value of pObject to the property in pInstance. pObject needs to point to an instance of this property's type.
Implements ezAbstractMemberProperty.