class ReflectExport( reflect ) DataProperty : public Property
Properties represent a single data element.
virtual bool WriteData( void * object, const Variant & value ) const = 0
Writes this property with the Variant value.
virtual bool ReadData( const void * , Variant & ) const = 0
Reads this property with the Variant value.
virtual bool RefData( const void * , void * , Variant & ) const = 0
Refs this property into the Variant value.
Properties represent a single data element.
class ReflectExport( reflect ) DataProperty : public Property
The type of data represented by this property.
virtual Type *DataType() const = 0
Writes this property with the Variant value.
virtual bool WriteData( void * object, const Variant & value ) const = 0
Variants represent objects of any reflected type.
class ReflectExport( reflect ) Variant
Reads this property with the Variant value.
virtual bool ReadData( const void * , Variant & ) const = 0
Refs this property into the Variant value.
virtual bool RefData( const void * , void * , Variant & ) const = 0
An implemetation of a DataProperty using a pointer-to-member to access the data.
template<typename ObjectType, typename MemberType> class DirectDataProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to read and write a direct reference.
template<typename ObjectType, typename MemberType> class AccessorProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to read and write a reference.
template<typename ObjectType, typename MemberType> class AccessorDirectProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to access a reference (const and non-const).
template<typename ObjectType, typename Type> class AccessorAccessProperty : public DataProperty
An implemetation of DataProperty using a pair of callbacks to read and write an indirect reference.
template<typename ObjectType, typename MemberType> class AccessorIndirectProperty : public DataProperty
An implemetation of Property which serializes a base class of another class.
template<typename BaseObjectType> class BaseClassProperty : public DataProperty
Properties represent data in a reflected type, and can be used to Serialize that data through a Reflector.
class ReflectExport( reflect ) Property : public Dynamic