Lightmetrica  0.0.1.50dbee3 (yosakoi)
 All Classes Functions Variables Typedefs Enumerations Enumerator
Public Member Functions | List of all members
RenderProcessScheduler Class Referenceabstract

#include <sched.h>

Public Member Functions

 LM_COMPONENT_INTERFACE_DEF ("rendersched")
 
virtual bool Configure (const ConfigNode &node, const Assets &assets)=0
 
virtual void SetTerminationMode (TerminationMode mode, double time)=0
 
virtual bool Render (Renderer &renderer, const Scene &scene) const =0
 
virtual boost::signals2::connection Connect_ReportProgress (const std::function< void(double, bool)> &func)=0
 
- Public Member Functions inherited from Component
virtual std::string ComponentInterfaceTypeName () const =0
 
virtual std::string ComponentImplTypeName () const =0
 
- Public Member Functions inherited from SIMDAlignedType
void * operator new (std::size_t size) throw (std::bad_alloc)
 
void operator delete (void *p)
 

Detailed Description

Render process scheduler. A base class for Render process scheduler. Render process scheduler is responsible for dispatch render processes according to internal implementations, e.g. multi-threaded, MPI.

Inheritance diagram for RenderProcessScheduler:
Component SIMDAlignedType DeterministicMTRenderProcessScheduler SamplingBasedRenderProcessScheduler MPIRenderProcessScheduler MTRenderProcessScheduler

Member Function Documentation

virtual bool RenderProcessScheduler::Configure ( const ConfigNode node,
const Assets assets 
)
pure virtual

Configure scheduler from XML element.

Parameters
nodeA XML element which consists of render_scheduler element.
assetsAssets manager.
sceneScene.
Return values
trueSucceeded to configure.
falseFailed to configure.

Implemented in MPIRenderProcessScheduler, MTRenderProcessScheduler, and DeterministicMTRenderProcessScheduler.

virtual boost::signals2::connection RenderProcessScheduler::Connect_ReportProgress ( const std::function< void(double, bool)> &  func)
pure virtual

Connect to ReportProgress signal. The signal is emitted when the progress of asset loading is changed.

Parameters
funcSlot function.

Implemented in MPIRenderProcessScheduler, MTRenderProcessScheduler, and DeterministicMTRenderProcessScheduler.

virtual bool RenderProcessScheduler::Render ( Renderer renderer,
const Scene scene 
) const
pure virtual

Start rendering. The function starts to render the #scene according to the current configuration.

Parameters
sceneScene.
Return values
trueSucceeded to render the scene.
trueFailed to render the scene.

Implemented in MPIRenderProcessScheduler, MTRenderProcessScheduler, and DeterministicMTRenderProcessScheduler.

virtual void RenderProcessScheduler::SetTerminationMode ( TerminationMode  mode,
double  time 
)
pure virtual

Set termination mode. Configures termination mode of the renderer and its parameters.

Parameters
terminationModeTermination mode.
timeTermination time for Time mode (in seconds).

Implemented in MPIRenderProcessScheduler, MTRenderProcessScheduler, and DeterministicMTRenderProcessScheduler.


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