Mitsuba Renderer  0.5.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Object Class Reference

Parent of all Mitsuba classes. More...

#include <mitsuba/mitsuba.h>

+ Inheritance diagram for Object:

Public Member Functions

 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 const ClassgetClass () const
 Retrieve this object's class. More...
 
virtual std::string toString () const
 Return a human-readable string representation of the object's contents. More...
 

Static Public Member Functions

static void staticInitialization ()
 Initializes the built-in reference count debugger (if enabled) More...
 
static void staticShutdown ()
 Free the memory taken by staticInitialization() More...
 

Static Public Attributes

static Classm_theClass
 Pointer to the object's class descriptor. More...
 

Protected Member Functions

virtual ~Object ()
 Virtual private deconstructor. (Will only be called by ref) More...
 

Detailed Description

Parent of all Mitsuba classes.

Contains functions relevant to every object such as reference counting, limited type introspection and lifetime management.

See Also
ref, Class

Constructor & Destructor Documentation

Object::Object ( )

Construct a new object.

virtual Object::~Object ( )
protectedvirtual

Virtual private deconstructor. (Will only be called by ref)

Member Function Documentation

void Object::decRef ( bool  autoDeallocate = true) const

Decrease the reference count of the object and possibly deallocate it.

The object will automatically be deallocated once the reference count reaches zero.

virtual const Class* Object::getClass ( ) const
virtual

Retrieve this object's class.

Reimplemented in mitsuba::Bitmap, mitsuba::Scene, mitsuba::DummyWorkUnit, mitsuba::LocalWorker, mitsuba::TMIPMap< Value, QuantizedValue >, mitsuba::Worker, mitsuba::Emitter, mitsuba::KDTreeBase< AABBType >, mitsuba::KDTreeBase< AABB2 >, mitsuba::KDTreeBase< AABB >, mitsuba::KDTreeBase< AABB4 >, mitsuba::PerspectiveCamera, mitsuba::Shape, mitsuba::BSDF, mitsuba::Stream, mitsuba::AnimatedTransform, mitsuba::Scheduler, mitsuba::ProjectiveCamera, mitsuba::SHSampler, mitsuba::MonteCarloIntegrator, mitsuba::SamplingIntegrator, mitsuba::AbstractEmitter, mitsuba::GPUTexture, mitsuba::Device, mitsuba::Statistics, mitsuba::VPLShaderManager, mitsuba::Sensor, mitsuba::SpectrumProductTexture, mitsuba::ParallelProcess, mitsuba::IrradianceCache, mitsuba::TriMesh, mitsuba::Renderer, mitsuba::GPUProgram, mitsuba::SeedWorkUnit, mitsuba::SpectrumSubtractionTexture, mitsuba::ImageBlock, mitsuba::ParticleTracer, mitsuba::PhaseFunction, mitsuba::StreamBackend, mitsuba::GLRenderer, mitsuba::Logger, mitsuba::SpectrumAdditionTexture, mitsuba::ShapeKDTree, mitsuba::Medium, mitsuba::PhotonMap, mitsuba::PathSampler, mitsuba::RemoteProcess, mitsuba::Thread, mitsuba::PluginManager, mitsuba::ChiSquare, mitsuba::Sampler, mitsuba::Texture2D, mitsuba::WorkProcessor, mitsuba::Random, mitsuba::ConditionVariable, mitsuba::ConstantFloatTexture, mitsuba::MutatorBase, mitsuba::Shader, mitsuba::UnbufferedAppender, mitsuba::FileStream, mitsuba::Integrator, mitsuba::Film, mitsuba::GLTexture, mitsuba::SSHStream, mitsuba::NSGLDevice, mitsuba::Font, mitsuba::RenderJob, mitsuba::GLProgram, mitsuba::HemisphereSampler, mitsuba::RemoteWorkerReader, mitsuba::RenderQueue, mitsuba::Texture, mitsuba::SocketStream, mitsuba::ShadowMapGenerator, mitsuba::Mutator, mitsuba::GatherPhotonProcess, mitsuba::Spiral, mitsuba::MemoryStream, mitsuba::FileResolver, mitsuba::Timer, mitsuba::StreamAppender, mitsuba::DefaultFormatter, mitsuba::WaitFlag, mitsuba::WorkResult, mitsuba::ZStream, mitsuba::ReplayableSampler, mitsuba::ConstantSpectrumTexture, mitsuba::ReconstructionFilter, mitsuba::ParticleProcess, mitsuba::ConfigurableObject, mitsuba::SpecularManifold, mitsuba::InstanceManager, mitsuba::RangeWorkUnit, mitsuba::BlockedRenderProcess, mitsuba::BidirectionalMutator, mitsuba::MemoryMappedFile, mitsuba::VolumeDataSource, mitsuba::CausticPerturbation, mitsuba::LensPerturbation, mitsuba::MultiChainPerturbation, mitsuba::AbstractAnimationTrack, mitsuba::Subsurface, mitsuba::WGLDevice, mitsuba::ManifoldPerturbation, mitsuba::RendererCapabilities, mitsuba::GPUGeometry, mitsuba::X11Device, mitsuba::TestCase, mitsuba::ConsoleStream, mitsuba::RemoteWorker, mitsuba::WorkUnit, mitsuba::X11Session, mitsuba::Formatter, mitsuba::WGLSession, mitsuba::Session, mitsuba::Appender, mitsuba::NetworkedObject, mitsuba::GLGeometry, mitsuba::RenderListener, mitsuba::GPUSync, mitsuba::NSGLSession, mitsuba::RectangularWorkUnit, mitsuba::GLSync, mitsuba::NSGLRenderer, mitsuba::WGLRenderer, mitsuba::Mutex, mitsuba::BlockedImageProcess, mitsuba::GLXRenderer, mitsuba::SerializableObject, mitsuba::Utility, and mitsuba::GLXDevice.

int Object::getRefCount ( ) const
inline

Return the current reference count.

void Object::incRef ( ) const

Increase the reference count of the object by one.

static void Object::staticInitialization ( )
static

Initializes the built-in reference count debugger (if enabled)

static void Object::staticShutdown ( )
static

Free the memory taken by staticInitialization()

Member Data Documentation

Class* Object::m_theClass
static

Pointer to the object's class descriptor.


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