Elm  2
ELM is a library providing generic data structures, OS-independent interface, plugins and XML.
Class< T, B > Class Template Reference

#include <elm/serial2/serial.h>

+ Inheritance diagram for Class< T, B >:

Public Member Functions

 Class (CString name, const rtti::AbstractClass &base=type_of< B >().asClass())
voidinstantiate () const override
void free (void *obj) const override
void serialize (elm::serial2::Serializer &ser, const void *data) const override
void unserialize (Unserializer &uns, void *data) const override
- Public Member Functions inherited from AbstractClass
 AbstractClass (CString name, const rtti::AbstractClass &base)
virtual bool isSerial (void) const
virtual const Serializable & asSerial (void) const
virtual const rtti::Typetype (void) const
- Public Member Functions inherited from AbstractClass
 AbstractClass (CString name, const AbstractClass &base)
 AbstractClass (const make &m)
 AbstractClass (const make &m, const AbstractClass &base)
const AbstractClassbase (void) const
bool baseOf (const AbstractClass *clazz)
virtual bool isClass (void) const
virtual const AbstractClassasClass (void) const
virtual voidupCast (void *ptr) const
virtual voiddownCast (void *ptr) const
virtual const TupletoTuple () const
voidupCast (void *ptr, const AbstractClass &cls) const
voiddownCast (void *ptr, const AbstractClass &cls) const
const voidupCast (const void *ptr) const
const voiddownCast (const void *ptr) const
const voidupCast (const void *ptr, const AbstractClass &cls) const
const voiddownCast (const void *ptr, const AbstractClass &cls) const
const List< Operation * > & operations (void) const
const List< const Type * > params (void) const
- Public Member Functions inherited from Type
 Type (string name="")
virtual ~Type (void)
string name (void) const
const PointerTypepointer (void) const
virtual bool canCast (const Type *t) const
virtual bool isVoid (void) const
virtual bool isBool (void) const
virtual bool isInt (void) const
virtual bool isFloat (void) const
virtual bool isPtr (void) const
virtual const PointerTypeasPtr (void) const
virtual bool isEnum (void) const
virtual const EnumerableasEnum (void) const
virtual const TemplateTypeasTemplate (void) const
virtual const InstanceTypeasInstance (void) const
virtual const ParamTypeasParam (void) const
void initialize (void)
bool operator== (const Type &t) const
bool operator!= (const Type &t) const
- Public Member Functions inherited from Serializable
virtual ~Serializable (void)

Additional Inherited Members

- Public Types inherited from Type
typedef HashMap< string, const Type * >::Iter TypeIter
- Static Public Member Functions inherited from Type
static const Typeget (string name)
static TypeIter types (void)
- Static Public Attributes inherited from Type
static const Typeparam0
static const Typeparam1
static const Typeparam2
static const Typeparam3

Constructor & Destructor Documentation

◆ Class()

Class ( CString  name,
const rtti::AbstractClass< T, B > &  base = type_of<B>().asClass< T, B >() 

Member Function Documentation

◆ free()

void free ( void obj) const

Free an object corresponding to the current class.

objObject to free.

Implements AbstractClass.

◆ instantiate()

void* instantiate ( ) const

Call this function to get a new allocated fresh object of the corresponding class. This function must be overridden to perform the actual allocation and the class must support constructor without any argument.

Allocated instance of class.

Implements AbstractClass.

◆ serialize()

void serialize ( elm::serial2::Serializer ser,
const void data 
) const

Serialize the data passed in parameter that must be of type corresponding to the interface.

serSerializer to use.
dataPointer to data to serialize.

Implements Serializable.

References elm::serial2::__serialize().

◆ unserialize()

void unserialize ( Unserializer uns,
void data 
) const

Unserialize the coming data from the unserializer to the place pointed by data. This place must be of the same type as the serializable type.

unsUnserializer to get data from.
dataPointer to place to unserialize in.

Implements Serializable.

References elm::serial2::__unserialize().

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