![]() |
XII Release 0.1.0
|
This is the base class for all constant properties that are stored inside the RTTI data. More...
#include <AbstractProperty.h>
Public Member Functions | |
xiiAbstractConstantProperty (xiiStringView sPropertyName) | |
Passes the property name through to xiiAbstractProperty. | |
virtual xiiPropertyCategory::Enum | GetCategory () const override |
Returns xiiPropertyCategory::Constant. | |
virtual void * | GetPropertyPointer () const =0 |
Returns a pointer to the constant data or nullptr. See xiiAbstractMemberProperty::GetPropertyPointer for more information. | |
virtual xiiVariant | GetConstant () const =0 |
Returns the constant value as a xiiVariant. | |
![]() | |
xiiAbstractProperty (xiiStringView sPropertyName) | |
The constructor must get the name of the property. The string must be a compile-time constant. | |
xiiStringView | GetPropertyName () const |
Returns the name of the property. | |
virtual const xiiRTTI * | GetSpecificType () const =0 |
Returns the type information of the constant property. Use this to cast this property to a specific version of xiiTypedConstantProperty. | |
const xiiBitflags< xiiPropertyFlags > & | GetFlags () const |
Returns the flags of the property. | |
xiiAbstractProperty * | AddFlags (xiiBitflags< xiiPropertyFlags > flags) |
Adds flags to the property. Returns itself to allow to be called during initialization. | |
xiiAbstractProperty * | AddAttributes (xiiPropertyAttribute *pAttrib1, xiiPropertyAttribute *pAttrib2=nullptr, xiiPropertyAttribute *pAttrib3=nullptr, xiiPropertyAttribute *pAttrib4=nullptr, xiiPropertyAttribute *pAttrib5=nullptr, xiiPropertyAttribute *pAttrib6=nullptr) |
Adds attributes to the property. Returns itself to allow to be called during initialization. Allocate an attribute using standard 'new'. | |
xiiArrayPtr< const xiiPropertyAttribute *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 | |
![]() | |
xiiBitflags< xiiPropertyFlags > | m_Flags |
xiiStringView | m_sPropertyName |
xiiHybridArray< const xiiPropertyAttribute *, 2U, xiiStaticAllocatorWrapper > | m_Attributes |
This is the base class for all constant properties that are stored inside the RTTI data.
|
inlineoverridevirtual |
Returns xiiPropertyCategory::Constant.
Implements xiiAbstractProperty.
|
pure virtual |
Returns the constant value as a xiiVariant.
Implemented in xiiConstantProperty< Type >, and xiiPhantomConstantProperty.
|
pure virtual |
Returns a pointer to the constant data or nullptr. See xiiAbstractMemberProperty::GetPropertyPointer for more information.
Implemented in xiiConstantProperty< Type >, and xiiPhantomConstantProperty.