Base class of all reference-counted objects with serialization support. More...
#include <mitsuba/core/serialization.h>
Public Member Functions | |
SerializableObject (Stream *stream, InstanceManager *manager) | |
Unserialize a serializable object. More... | |
virtual void | serialize (Stream *stream, InstanceManager *manager) const =0 |
Serialize this object to a stream. More... | |
virtual const Class * | getClass () const |
Retrieve this object's class. More... | |
Public Member Functions inherited from Object | |
Object () | |
Construct a new object. More... | |
int | getRefCount () const |
Return the current reference count. More... | |
void | incRef () const |
Increase the reference count of the object by one. More... | |
void | decRef (bool autoDeallocate=true) const |
Decrease the reference count of the object and possibly deallocate it. More... | |
virtual std::string | toString () const |
Return a human-readable string representation of the object's contents. More... | |
Static Public Attributes | |
static Class * | m_theClass |
Static Public Attributes inherited from Object | |
static Class * | m_theClass |
Pointer to the object's class descriptor. More... | |
Protected Member Functions | |
SerializableObject () | |
Construct a serializable object. More... | |
virtual | ~SerializableObject () |
Virtual deconstructor. More... | |
Protected Member Functions inherited from Object | |
virtual | ~Object () |
Virtual private deconstructor. (Will only be called by ref) More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from Object | |
static void | staticInitialization () |
Initializes the built-in reference count debugger (if enabled) More... | |
static void | staticShutdown () |
Free the memory taken by staticInitialization() More... | |
Base class of all reference-counted objects with serialization support.
To support unserialization from a stream, the implementation should use one of the RTTI macros MTS_IMPLEMENT_CLASS_S or MTS_IMPLEMENT_CLASS_IS.
mitsuba::SerializableObject::SerializableObject | ( | Stream * | stream, |
InstanceManager * | manager | ||
) |
Unserialize a serializable object.
|
inlineprotected |
Construct a serializable object.
|
inlineprotectedvirtual |
Virtual deconstructor.
|
virtual |
Retrieve this object's class.
Reimplemented from Object.
Reimplemented in mitsuba::Scene, mitsuba::Emitter, mitsuba::PerspectiveCamera, mitsuba::Shape, mitsuba::BSDF, mitsuba::ProjectiveCamera, mitsuba::MonteCarloIntegrator, mitsuba::SamplingIntegrator, mitsuba::AbstractEmitter, mitsuba::Sensor, mitsuba::SpectrumProductTexture, mitsuba::IrradianceCache, mitsuba::TriMesh, mitsuba::SpectrumSubtractionTexture, mitsuba::ParticleTracer, mitsuba::PhaseFunction, mitsuba::SpectrumAdditionTexture, mitsuba::Medium, mitsuba::PhotonMap, mitsuba::Sampler, mitsuba::Texture2D, mitsuba::WorkProcessor, mitsuba::Random, mitsuba::ConstantFloatTexture, mitsuba::Integrator, mitsuba::Film, mitsuba::Texture, mitsuba::ReplayableSampler, mitsuba::ConstantSpectrumTexture, mitsuba::ReconstructionFilter, mitsuba::ConfigurableObject, mitsuba::VolumeDataSource, mitsuba::Subsurface, and mitsuba::NetworkedObject.
|
pure virtual |
Serialize this object to a stream.
Implemented in mitsuba::Scene, mitsuba::Emitter, mitsuba::PerspectiveCamera, mitsuba::Shape, mitsuba::BSDF, mitsuba::MonteCarloIntegrator, mitsuba::ProjectiveCamera, mitsuba::SamplingIntegrator, mitsuba::AbstractEmitter, mitsuba::Sensor, mitsuba::SpectrumProductTexture, mitsuba::SpectrumSubtractionTexture, mitsuba::TriMesh, mitsuba::IrradianceCache, mitsuba::SpectrumAdditionTexture, mitsuba::PhotonMap, mitsuba::Medium, mitsuba::Sampler, mitsuba::Random, mitsuba::ConstantFloatTexture, mitsuba::Texture2D, mitsuba::ParticleTracer, mitsuba::Integrator, mitsuba::Film, mitsuba::Texture, mitsuba::ConstantSpectrumTexture, mitsuba::ReconstructionFilter, mitsuba::ReplayableSampler, mitsuba::Subsurface, mitsuba::ConfigurableObject, mitsuba::NetworkedObject, and mitsuba::VolumeDataSource.
|
static |