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

Public Member Functions

 LM_COMPONENT_IMPL_DEF ("det.mt")
 
virtual bool Configure (const ConfigNode &node, const Assets &assets) override
 
virtual void SetTerminationMode (TerminationMode mode, double time) override
 
virtual bool Render (Renderer &renderer, const Scene &scene) const override
 
virtual boost::signals2::connection Connect_ReportProgress (const std::function< void(double, bool)> &func) override
 
- Public Member Functions inherited from RenderProcessScheduler
 LM_COMPONENT_INTERFACE_DEF ("rendersched")
 
- 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

Deterministic multithreaded render process scheduler. Creates and schedules render processes among threads. Multi-threading is supported by OpenMP. We note that this scheduler requires DeterministicPixelBasedRenderProcess.

See also
DeterministicPixelBasedRenderProcess.
Inheritance diagram for DeterministicMTRenderProcessScheduler:
RenderProcessScheduler Component SIMDAlignedType

Member Function Documentation

bool DeterministicMTRenderProcessScheduler::Configure ( const ConfigNode node,
const Assets assets 
)
overridevirtual

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.

Implements RenderProcessScheduler.

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

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

Parameters
funcSlot function.

Implements RenderProcessScheduler.

bool DeterministicMTRenderProcessScheduler::Render ( Renderer renderer,
const Scene scene 
) const
overridevirtual

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.

Implements RenderProcessScheduler.

virtual void DeterministicMTRenderProcessScheduler::SetTerminationMode ( TerminationMode  mode,
double  time 
)
inlineoverridevirtual

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

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

Implements RenderProcessScheduler.


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