PxSerializerDefaultAdapter< T > Class Template Reference
[Extensions]

Default PxSerializer implementation. More...

#include <PxSerializer.h>

Inheritance diagram for PxSerializerDefaultAdapter< T >:

Inheritance graph
PxSerializer
[legend]
Collaboration diagram for PxSerializerDefaultAdapter< T >:

Collaboration graph
PxSerializer
[legend]

List of all members.

Public Member Functions

Basics needed for Binary- and RepX-Serialization
 PxSerializerDefaultAdapter (const char *name)
virtual const char * getConcreteTypeName () const
 Returns string name of dynamic type.
virtual void requiresObjects (PxBase &obj, PxProcessPxBaseCallback &c) const
 Adds required objects to the collection.
virtual bool isSubordinate () const
 Whether the object is subordinate.
Functionality needed for Binary Serialization only
virtual void exportExtraData (PxBase &obj, PxSerializationContext &s) const
 Exports object's extra data to stream.
virtual void exportData (PxBase &obj, PxSerializationContext &s) const
 Exports object's data to stream.
virtual void registerReferences (PxBase &obj, PxSerializationContext &s) const
 Register references that the object maintains to other objects.
virtual size_t getClassSize () const
 Returns size needed to create the class instance.
virtual PxBasecreateObject (PxU8 *&address, PxDeserializationContext &context) const
 Create object at a given address, resolve references and import extra data.

Private Attributes

const char * mTypeName


Detailed Description

template<class T>
class PxSerializerDefaultAdapter< T >

Default PxSerializer implementation.

Constructor & Destructor Documentation

template<class T >
PxSerializerDefaultAdapter< T >::PxSerializerDefaultAdapter ( const char *  name  )  [inline]


Member Function Documentation

template<class T >
virtual PxBase* PxSerializerDefaultAdapter< T >::createObject ( PxU8 *&  address,
PxDeserializationContext context 
) const [inline, virtual]

Create object at a given address, resolve references and import extra data.

Parameters:
address Location at which object is created. Address is increased by the size of the created object.
context Context for reading external data and resolving references.
Returns:
Created PxBase pointer (needs to be identical to address before increment).

Implements PxSerializer.

template<class T >
virtual void PxSerializerDefaultAdapter< T >::exportData ( PxBase ,
PxSerializationContext  
) const [inline, virtual]

Exports object's data to stream.

Implements PxSerializer.

References PxSerializationContext::writeData().

template<class T >
virtual void PxSerializerDefaultAdapter< T >::exportExtraData ( PxBase ,
PxSerializationContext  
) const [inline, virtual]

Exports object's extra data to stream.

Implements PxSerializer.

template<class T >
virtual size_t PxSerializerDefaultAdapter< T >::getClassSize (  )  const [inline, virtual]

Returns size needed to create the class instance.

Returns:
sizeof class instance.

Implements PxSerializer.

template<class T >
virtual const char* PxSerializerDefaultAdapter< T >::getConcreteTypeName (  )  const [inline, virtual]

Returns string name of dynamic type.

Returns:
Class name of most derived type of this object.

Implements PxSerializer.

template<class T >
virtual bool PxSerializerDefaultAdapter< T >::isSubordinate (  )  const [inline, virtual]

Whether the object is subordinate.

A class is subordinate, if it can only be instantiated in the context of another class.

Returns:
Whether the class is subordinate
See also:
PxSerialization::isSerializable

Implements PxSerializer.

template<class T >
virtual void PxSerializerDefaultAdapter< T >::registerReferences ( PxBase obj,
PxSerializationContext s 
) const [inline, virtual]

Register references that the object maintains to other objects.

Implements PxSerializer.

References PX_ASSERT, PX_SERIAL_REF_KIND_PXBASE, and PxSerializationContext::registerReference().

template<class T >
virtual void PxSerializerDefaultAdapter< T >::requiresObjects ( PxBase ,
PxProcessPxBaseCallback  
) const [inline, virtual]

Adds required objects to the collection.

This method does not add the required objects recursively, e.g. objects required by required objects.

See also:
PxCollection, PxSerialization::complete

Implements PxSerializer.


Member Data Documentation

template<class T >
const char* PxSerializerDefaultAdapter< T >::mTypeName [private]


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


Copyright © 2008-2018 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. www.nvidia.com