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

Abstract interface for objects that reference shared network resources. More...

#include <mitsuba/core/netobject.h>

+ Inheritance diagram for mitsuba::NetworkedObject:

Public Member Functions

virtual void bindUsedResources (ParallelProcess *proc) const
 Bind any used resources to the process proc. More...
 
virtual void wakeup (ConfigurableObject *parent, std::map< std::string, SerializableObject * > &params)
 Retrieve any required resources. More...
 
virtual void serialize (Stream *stream, InstanceManager *manager) const
 Serialize this object to a stream. More...
 
virtual const ClassgetClass () const
 Retrieve this object's class. More...
 
- Public Member Functions inherited from mitsuba::ConfigurableObject
virtual void setParent (ConfigurableObject *parent)
 Notify the ConfigurableObject instance about its parent object. More...
 
virtual void addChild (const std::string &name, ConfigurableObject *child)
 Add a child (default implementation throws an error) More...
 
void addChild (ConfigurableObject *child)
 Add an unnamed child. More...
 
virtual void configure ()
 Configure the object (called once after construction and addition of all child ConfigurableObject instances)) More...
 
const std::string & getID () const
 Return the identifier associated with this instance (or "unnamed") More...
 
void setID (const std::string &name)
 Set the identifier associated with this instance. More...
 
const PropertiesgetProperties () const
 Return the properties object that was originally used to create this instance. More...
 
- Public Member Functions inherited from mitsuba::SerializableObject
 SerializableObject (Stream *stream, InstanceManager *manager)
 Unserialize a serializable object. 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 Classm_theClass
 
- Static Public Attributes inherited from mitsuba::ConfigurableObject
static Classm_theClass
 
- Static Public Attributes inherited from mitsuba::SerializableObject
static Classm_theClass
 
- Static Public Attributes inherited from Object
static Classm_theClass
 Pointer to the object's class descriptor. More...
 

Protected Member Functions

virtual ~NetworkedObject ()
 Virtual destructor. More...
 
 NetworkedObject (const Properties &props)
 Constructor. More...
 
 NetworkedObject (Stream *stream, InstanceManager *manager)
 Unserialize a configurable object. More...
 
- Protected Member Functions inherited from mitsuba::ConfigurableObject
virtual ~ConfigurableObject ()
 Virtual destructor. More...
 
 ConfigurableObject (const Properties &props)
 Construct a configurable object. More...
 
 ConfigurableObject (Stream *stream, InstanceManager *manager)
 Unserialize a configurable object. More...
 
- Protected Member Functions inherited from mitsuba::SerializableObject
 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...
 
- Protected Attributes inherited from mitsuba::ConfigurableObject
Properties m_properties
 

Detailed Description

Abstract interface for objects that reference shared network resources.

When a networked object is serialized as part of a parallel process executed on multiple machines, the object is first given the opportunity to bind named resources to the process (by a call to bindUsedResources()). These will then be distributed to all participating compute servers. Once unserialized on the remote side, wakeup() is called to let the object re-associate with the shared resources.

Constructor & Destructor Documentation

virtual mitsuba::NetworkedObject::~NetworkedObject ( )
inlineprotectedvirtual

Virtual destructor.

mitsuba::NetworkedObject::NetworkedObject ( const Properties props)
inlineprotected

Constructor.

mitsuba::NetworkedObject::NetworkedObject ( Stream stream,
InstanceManager manager 
)
inlineprotected

Unserialize a configurable object.

Member Function Documentation

virtual void mitsuba::NetworkedObject::bindUsedResources ( ParallelProcess proc) const
virtual

Bind any used resources to the process proc.

Reimplemented in mitsuba::Scene, and mitsuba::SamplingIntegrator.

virtual const Class* mitsuba::NetworkedObject::getClass ( ) const
virtual
virtual void mitsuba::NetworkedObject::serialize ( Stream stream,
InstanceManager manager 
) const
virtual
virtual void mitsuba::NetworkedObject::wakeup ( ConfigurableObject parent,
std::map< std::string, SerializableObject * > &  params 
)
virtual

Retrieve any required resources.

Reimplemented in mitsuba::Scene, and mitsuba::SamplingIntegrator.

Member Data Documentation

Class* mitsuba::NetworkedObject::m_theClass
static

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