Lumiera  0.pre.03
»edit your freedom«
LumieraRenderProcessBuilder Class Reference

Description

Definition at line 65 of file render-configurator.cpp.

Public Member Functions

 LumieraRenderProcessBuilder (POutputManager outputManager, Timings playbackSpeed)
 
- Public Member Functions inherited from RenderConfigurator
virtual ~RenderConfigurator ()
 this is an interface
 
Feed buildActiveFeed (ModelPort)
 Template Method: how to build an active render feed, pulling from the given exit point of the model and feeding the OutputSlot established appropriately to deliver media data of suitable type.
 

Private Member Functions

engine::CalcStreams activateEngine (ModelPort port, Timings timings, OutputSlot::Allocation &activeOutputConnection, RenderQuality quality)
 
engine::CalcStreams buildCalculationStreams (ModelPort port, OutputSlot &output)
 build active rendering connections, thereby delivering each channel of the given model port into the corresponding output sink. More...
 
OutputSlotgetOutputFor (ModelPort port)
 retrieve a suitable output sink for the data to be produced at the given model exit point. More...
 

Private Attributes

POutputManager outputResolver_
 
Timings playbackTimings_
 
RenderQuality renderQuality_
 

Additional Inherited Members

- Public Types inherited from RenderConfigurator
using ConnectFunction = function< Feed(ModelPort)>
 

Member Function Documentation

◆ getOutputFor()

OutputSlot& getOutputFor ( ModelPort  port)
inlineprivatevirtual

retrieve a suitable output sink for the data to be produced at the given model exit point.

While the port already defines the necessary StreamType, this strategy still has to decide what concrete output sink to use accordingly.

Implements RenderConfigurator.

Definition at line 75 of file render-configurator.cpp.

References OutputSlot::isFree().

+ Here is the call graph for this function:

◆ buildCalculationStreams()

engine::CalcStreams buildCalculationStreams ( ModelPort  ,
OutputSlot  
)
inlineprivatevirtual

build active rendering connections, thereby delivering each channel of the given model port into the corresponding output sink.

This strategy will try to allocate the output slot for output (may fail). Moreover, a suitable combination of output timings and service quality will be picked

Returns
List of active CalcStream descriptors, created and registered with the EngineFacade, one for each channel connection.
Note
when this strategy function returns, the corresponding render activities are already up and running.
Todo:
get rid of the multiple channel connections /////////////////////////////////////////TICKET #1297 : retract differentiation into channels here (instead use ModelPorts in the Segment)

Implements RenderConfigurator.

Definition at line 87 of file render-configurator.cpp.

References OutputSlot::allocate(), and EngineService::instance.

+ Here is the call graph for this function:
+ Inheritance diagram for LumieraRenderProcessBuilder:
+ Collaboration diagram for LumieraRenderProcessBuilder:

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