PersistentClass

class ReflectExport(reflect) PersistentClass : public Class

This class enables serialization and stores property maps.

Summary
PersistentClassThis class enables serialization and stores property maps.
Types
PropertyMapA map of properties for the class by name.
Functions
Construct
DestructA pointer to a Persistent constructed with this Class.
CreateA new instance of the class (if it’s not Abstract)
AddPropertyAdds the property to the property map.
PropertiesConst accessor for the class PropertyMap.
PropertiesAccessor for the class PropertyMap.
FindPropertyFinds a property in this class’ PropertyMap or a parent class.
FindPropertyFinds a property in this class’ PropertyMap or a parent class.
ResolvePropertyPath
ResolvePropertyPath
ResolvePropertyPath
WritePropertyWrites a property using a StandardDeserializer to parse the data.
WriteStringProperty
ReadPropertyReads a property using a StandardSerializer to format the data.
ReadStringProperty
WriteRefPropertyWrites a reference property (a property representing a Dynamic *).
ReadRefPropertyReads a reference property (a property representing a Dynamic *).
GetPropertyType
SerializeProperties
DeserializeProperties
Serialize
PersistentClass::PropertyIterator

Types

PropertyMap

typedef std::map<string::SharedString, const Property *> PropertyMap

A map of properties for the class by name.  The map only contains properties registered on this class directly, and not inherited properties.

Functions

Construct

Persistent *Construct(void *) const

Parameters

dataan aligned pointer to at least <Alignment()> bytes of memory.

Returns

A new instance of the class (if it’s not Abstract)

Destruct

void Destruct(Persistent *) const

Parameters

A pointer to a Persistent constructed with this Class.

Create

Persistent *Create() const

Returns

A new instance of the class (if it’s not Abstract)

AddProperty

Adds the property to the property map.  The property name should not be the same as any property named in a subclass.

Properties

Const accessor for the class PropertyMap.

Properties

PropertyMap &Properties()

Accessor for the class PropertyMap.

FindProperty

const Property *FindProperty(string::Fragment name) const

Finds a property in this class’ PropertyMap or a parent class.

FindProperty

const Property *FindProperty(string::SharedString name) const

Finds a property in this class’ PropertyMap or a parent class.  The SharedString name should be in the global string stack.

ResolvePropertyPath

static bool ResolvePropertyPath(PropertyPath &result,
const Persistent *,
string::Fragment path)

See Also

ResolvePropertyPath

static bool ResolvePropertyPath(PropertyPath &result,
Persistent *,
string::Fragment path)

See Also

ResolvePropertyPath

static bool ResolvePropertyPath(PropertyPath &result,
const Persistent *,
Persistent *,
string::Fragment path)

See Also

WriteProperty

bool WriteProperty(Persistent *,
string::Fragment path,
string::Fragment value) const

Writes a property using a StandardDeserializer to parse the data.

WriteStringProperty

bool WriteStringProperty(Persistent *,
string::Fragment path,
string::Fragment value) const

ReadProperty

bool ReadProperty(const Persistent *,
string::Fragment path,
string::String &value) const

Reads a property using a StandardSerializer to format the data.

ReadStringProperty

bool ReadStringProperty(const Persistent *,
string::Fragment path,
string::String &value) const

WriteRefProperty

bool WriteRefProperty(Persistent *,
string::Fragment path,
Dynamic *value) const

Writes a reference property (a property representing a Dynamic *).

See Also

  • <RefProperty>

ReadRefProperty

bool ReadRefProperty(const Persistent *,
string::Fragment path,
Dynamic *&value) const

Reads a reference property (a property representing a Dynamic *).

See Also

  • <RefProperty>

GetPropertyType

const Type *GetPropertyType(const Persistent *,
string::Fragment path) const

SerializeProperties

void SerializeProperties(const Persistent *,
Reflector &) const

DeserializeProperties

void DeserializeProperties(Persistent *,
Reflector &) const

Serialize

void Serialize(const void *in,
void *out,
Reflector &reflector) const

PersistentClass::PropertyIterator

class ReflectExport(reflect) PersistentClass::PropertyIterator
class ReflectExport(reflect) PersistentClass : public Class
This class enables serialization and stores property maps.
typedef std::map<string::SharedString, const Property *> PropertyMap
A map of properties for the class by name.
Persistent *Construct(void *) const
void Destruct(Persistent *) const
A pointer to a Persistent constructed with this Class.
Persistent *Create() const
A new instance of the class (if it’s not Abstract)
PropertyMap &Properties()
Accessor for the class PropertyMap.
const Property *FindProperty(string::Fragment name) const
Finds a property in this class’ PropertyMap or a parent class.
static bool ResolvePropertyPath(PropertyPath &result,
const Persistent *,
string::Fragment path)
bool WriteProperty(Persistent *,
string::Fragment path,
string::Fragment value) const
Writes a property using a StandardDeserializer to parse the data.
class ReflectExport(reflect) StandardDeserializer : public Deserializer
A basic ascii text deserializer.
bool WriteStringProperty(Persistent *,
string::Fragment path,
string::Fragment value) const
bool ReadProperty(const Persistent *,
string::Fragment path,
string::String &value) const
Reads a property using a StandardSerializer to format the data.
class ReflectExport(reflect) StandardSerializer : public Serializer
A basic ascii text serializer.
bool ReadStringProperty(const Persistent *,
string::Fragment path,
string::String &value) const
bool WriteRefProperty(Persistent *,
string::Fragment path,
Dynamic *value) const
Writes a reference property (a property representing a Dynamic *).
class ReflectExport(reflect) Dynamic
This class defines the core interface for all runtime type identification (RTTI) in reflect.
bool ReadRefProperty(const Persistent *,
string::Fragment path,
Dynamic *&value) const
Reads a reference property (a property representing a Dynamic *).
const Type *GetPropertyType(const Persistent *,
string::Fragment path) const
void SerializeProperties(const Persistent *,
Reflector &) const
void DeserializeProperties(Persistent *,
Reflector &) const
void Serialize(const void *in,
void *out,
Reflector &reflector) const
class ReflectExport(reflect) PersistentClass::PropertyIterator
SharedStrings are like ConstStrings except their string pointers are guaranteed to be one-one with their data.
class ReflectExport(reflect) PropertyPath
A PropertyPath is a generic proxy for a data in an object.
Close