43 using std::placeholders::_1;
44 using engine::EngineService;
46 typedef EngineService::QoS_Definition RenderQuality;
62 RenderQuality renderQuality_;
68 REQUIRE (outputResolver_);
69 OutputSlot& slot = outputResolver_->getOutputFor (port);
71 throw error::State{
"unable to acquire a suitable output slot" 81 Timings nominalTimings = activeOutputConnection.getTimingConstraints()
82 .constrainedBy(playbackTimings_);
84 return activateEngine (port, nominalTimings, activeOutputConnection, renderQuality_);
97 : outputResolver_(outputManager)
98 , playbackTimings_(playbackSpeed)
99 , renderQuality_(EngineService::QoS_DEFAULT)
131 return Feed (buildCalculationStreams (port,slot));
151 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.