chrono::ChFunctorArchiveIn Class Referenceabstract

Description

Functor to call the ArchiveIN function for unrelated classes that implemented them.

This helps stripping out the templating, to make ChArchiveIn easier and equippable with virtual functions.

#include <ChArchive.h>

Inherited by chrono::ChFunctorArchiveInSpecific< TClass >, and chrono::ChFunctorArchiveInSpecificPtr< TClass >.

Public Member Functions

virtual void CallArchiveIn (ChArchiveIn &marchive)=0
 Use this to call member function ArchiveIn.
 
virtual void CallArchiveInConstructor (ChArchiveIn &marchive, const char *classname)=0
 Use this to call an (optional) static member function ArchiveINconstructor. More...
 
virtual void CallConstructor (ChArchiveIn &marchive, const char *classname)=0
 Use this to create a new object as pt2Object = new myclass() If classname not registered, throws exception.
 
virtual void SetRawPtr (void *mptr)=0
 Set the pointer (use static_cast)
 
virtual void * GetRawPtr ()=0
 Get the pointer (use static_cast)
 
virtual bool IsPolymorphic ()=0
 Tell if the pointed object is polymorphic.
 

Member Function Documentation

◆ CallArchiveInConstructor()

virtual void chrono::ChFunctorArchiveIn::CallArchiveInConstructor ( ChArchiveIn marchive,
const char *  classname 
)
pure virtual

Use this to call an (optional) static member function ArchiveINconstructor.

This is expected to a) deserialize constructor parameters, b) create a new obj as pt2Object = new myclass(params..). If classname not registered, call T::ArchiveINconstructor()
If ArchiveINconstructor() is not provided, simply creates a new object as new obj() in CallNewPolimorphic.


The documentation for this class was generated from the following file:
  • /builds/uwsbel/chrono/src/chrono/serialization/ChArchive.h