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

Public Types

typedef ezTypeTraits
< Container >
::NonConstReferenceType 
ContainerType
 
typedef
ezContainerSubTypeResolver
< ContainerType >::Type 
ContainerSubType
 
typedef ezTypeTraits< Type >
::NonConstReferenceType 
RealType
 
typedef void(Class::* InsertFunc )(Type value)
 
typedef void(Class::* RemoveFunc )(Type value)
 
typedef Container(Class::* GetValuesFunc )() const
 

Public Member Functions

 ezAccessorSetProperty (const char *szPropertyName, GetValuesFunc getValues, InsertFunc insert, RemoveFunc remove)
 
virtual ezUInt32 GetCount (const void *pInstance) const override
 Returns number of elements.
 
virtual void Clear (void *pInstance) override
 Clears the set.
 
virtual void Insert (void *pInstance, void *pObject) override
 Inserts the target of pObject into the set.
 
virtual void Remove (void *pInstance, void *pObject) override
 Removes the target of pObject from the set.
 
virtual bool Contains (const void *pInstance, void *pObject) const override
 Returns whether the target of pObject is in the set.
 
virtual void GetValues (const void *pInstance, ezHybridArray< ezVariant, 16 > &out_keys) const override
 Writes the content of the set to out_keys.
 
- Public Member Functions inherited from ezTypedSetProperty< Type >
 ezTypedSetProperty (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 ezAbstractSetProperty
 ezAbstractSetProperty (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

GetValuesFunc m_GetValues
 
InsertFunc m_Insert
 
RemoveFunc m_Remove
 

Additional Inherited Members

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

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