29 #ifndef PX_REPX_SERIALIZER_H 30 #define PX_REPX_SERIALIZER_H 43 class XmlMemoryAllocator;
76 virtual const char* getTypeName() = 0;
110 template<
typename TDataType>
113 return physx::PxRepXObject(physx::PxTypeInfo<TDataType>::name(), inType, inId);
122 return physx::PxRepXObject(inType->getConcreteTypeName(), inType, inId);
128 template<
typename TDataType>
131 return PxCreateRepXObject(inType, static_cast<physx::PxSerialObjectId>(reinterpret_cast<size_t>(inType)));
137 #define PX_NEW_REPX_SERIALIZER(T) \ 138 *PX_PLACEMENT_NEW(PxGetFoundation().getAllocatorCallback().allocate(sizeof(T), "PxRepXSerializer", __FILE__, __LINE__ ), T)(PxGetFoundation().getAllocatorCallback()) 143 #define PX_DELETE_REPX_SERIALIZER(x) \ 144 { PxRepXSerializer* s = x; if (s) { PxGetFoundation().getAllocatorCallback().deallocate(s); } } 148 #endif // PX_REPX_SERIALIZER_H Definition: GuContactBuffer.h:37
PX_INLINE physx::PxRepXObject PxCreateRepXObject(const TDataType *inType, const physx::PxSerialObjectId inId)
Inline helper template function to create PxRepXObject from TDataType type supporting PxTypeInfo<TDat...
Definition: PxRepXSerializer.h:111
Serializer interface for RepX (Xml) serialization.
Definition: PxRepXSerializer.h:66
PxU64 PxSerialObjectId
ID type for PxBase objects in a PxCollection.
Definition: PxSerialFramework.h:62
Collection class for serialization.
Definition: PxCollection.h:105
Arguments required to instantiate a serializable object from RepX.
Definition: PxRepXSimpleType.h:85
#define PX_ASSERT(exp)
Definition: PxAssert.h:61
Helper class containing the mapping of id to object, and type name.
Definition: PxRepXSimpleType.h:52
virtual ~PxRepXSerializer()
Definition: PxRepXSerializer.h:69
#define PX_INLINE
Definition: PxPreprocessor.h:349