ezEngine Release 26.9
Loading...
Searching...
No Matches
ezTypedConstantProperty< Type > Class Template Referenceabstract

The base class for all typed member properties. Ie. once the type of a property is determined, it can be cast to the proper version of this. More...

#include <ConstantProperty.h>

Inheritance diagram for ezTypedConstantProperty< Type >:

Public Member Functions

 ezTypedConstantProperty (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 =0
 Returns the value of the property. Pass the instance pointer to the surrounding class along.
 
- Public Member Functions inherited from ezAbstractConstantProperty
 ezAbstractConstantProperty (const char *szPropertyName)
 Passes the property name through to ezAbstractProperty.
 
virtual ezPropertyCategory::Enum GetCategory () const override
 Returns ezPropertyCategory::Constant.
 
virtual void * GetPropertyPointer () const =0
 Returns a pointer to the constant data or nullptr. See ezAbstractMemberProperty::GetPropertyPointer for more information.
 
virtual ezVariant GetConstant () const =0
 Returns the constant value as an ezVariant.
 
- 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
 

Detailed Description

template<typename Type>
class ezTypedConstantProperty< Type >

The base class for all typed member properties. Ie. 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.

Member Function Documentation

◆ GetSpecificType()

template<typename Type >
virtual const ezRTTI * ezTypedConstantProperty< Type >::GetSpecificType ( ) const
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.

◆ GetValue()

template<typename Type >
virtual Type ezTypedConstantProperty< Type >::GetValue ( ) const
pure virtual

Returns the value of the property. Pass the instance pointer to the surrounding class along.

Implemented in ezConstantProperty< Type >.


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