52 using std::placeholders::_1;
53 using engine::EngineService;
55 typedef EngineService::QoS_Definition RenderQuality;
71 RenderQuality renderQuality_;
77 REQUIRE (outputResolver_);
78 OutputSlot& slot = outputResolver_->getOutputFor (port);
80 throw error::State{
"unable to acquire a suitable output slot" 90 Timings nominalTimings = activeOutputConnection.getTimingConstraints()
91 .constrainedBy(playbackTimings_);
93 return activateEngine (port, nominalTimings, activeOutputConnection, renderQuality_);
106 : outputResolver_(outputManager)
107 , playbackTimings_(playbackSpeed)
108 , renderQuality_(EngineService::QoS_DEFAULT)
140 return Feed (buildCalculationStreams (port,slot));
160 RenderConfigurator::ConnectFunction
Access point for the (core) calculation service of the render engine.
virtual ~RenderConfigurator()
this is an interface
Strategy to hold all the detail knowledge necessary to establish a running render CalculationStream...
Generic frame timing specification.
RenderConfigurator * how_to_render(POutputManager outputPossibilities, Timings playTimings)
engine::CalcStreams buildCalculationStreams(ModelPort port, OutputSlot &output)
build active rendering connections, thereby delivering each channel of the given model port into the ...
Steam-Layer implementation namespace root.
static lib::Depend< EngineService > instance
access point to the Engine Interface.
Derived specific exceptions within Lumiera's exception hierarchy.
Feed buildActiveFeed(ModelPort)
Template Method: how to build an active render feed, pulling from the given exit point of the model a...
bool isFree() const
can this OutputSlot be allocated?
RenderConfigurator::ConnectFunction buildRenderConfiguration(POutputManager outputPossibilities, Timings playTimings)
Factory function to build a RenderConfigurator specifically tailored for a PlayProcess, about to be started.
Lumiera error handling (C++ interface).
Handle designating a point within the model, where actually output data can be pulled.
Interface: Generic output sink.
Allocation & allocate()
claim this slot for exclusive use
A global service to handle all external output connections.
Rendering data feed, corresponding to a single global pipe and to be delivered into a single OutputSl...
OutputSlot & getOutputFor(ModelPort port)
retrieve a suitable output sink for the data to be produced at the given model exit point...
Strategy for configuring the render process.