![]() |
ezEngine Release 26.3
|
Base interface for all properties in the reflection system. More...
#include <AbstractProperty.h>

Public Member Functions | |
| 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. | |
| virtual const ezRTTI * | GetSpecificType () const =0 |
| Returns the type information of the constant property. Use this to cast this property to a specific version of ezTypedConstantProperty. | |
| virtual ezPropertyCategory::Enum | GetCategory () const =0 |
| Returns the category of this property. Cast this property to the next higher type for more information. | |
| 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. | |
Protected Attributes | |
| ezBitflags< ezPropertyFlags > | m_Flags |
| const char * | m_szPropertyName |
| ezHybridArray< const ezPropertyAttribute *, 2, ezStaticsAllocatorWrapper > | m_Attributes |
Base interface for all properties in the reflection system.
Properties represent accessible data members, functions, or virtual data in reflected types. This base class provides the common interface and metadata for property introspection.
Property categories:
Key features:
Usage: Properties are typically registered through reflection macros rather than created manually.
|
pure virtual |
Returns the category of this property. Cast this property to the next higher type for more information.
Implemented in ezAbstractConstantProperty, ezAbstractMemberProperty, ezAbstractArrayProperty, ezAbstractSetProperty, ezAbstractMapProperty, and ezAbstractFunctionProperty.
|
pure virtual |
Returns the type information of the constant property. Use this to cast this property to a specific version of ezTypedConstantProperty.
Implemented in ezAbstractFunctionProperty, ezTypedArrayProperty< Type >, ezTypedArrayProperty< ezTypeTraits< Type >::NonConstReferenceType >, ezTypedArrayProperty< const char * >, ezTypedConstantProperty< Type >, ezTypedEnumProperty< EnumType >, ezTypedMapProperty< Type >, ezTypedMapProperty< ezTypeTraits< Type >::NonConstReferenceType >, ezTypedMemberProperty< Type >, ezTypedMemberProperty< ezColor >, ezTypedMemberProperty< ezColorGammaUB >, ezTypedMemberProperty< ezStringView >, ezTypedMemberProperty< ezTypeTraits< Type >::NonConstReferenceType >, ezTypedMemberProperty< const char * >, ezTypedSetProperty< Type >, ezTypedSetProperty< ezTypeTraits< const char * >::NonConstReferenceType >, ezTypedSetProperty< ezTypeTraits< Type >::NonConstReferenceType >, ezTypedSetProperty< const char * >, ezPhantomConstantProperty, ezPhantomMemberProperty, ezPhantomArrayProperty, ezPhantomSetProperty, and ezPhantomMapProperty.