Lumiera
0.pre.03
»edit your freedom«
|
#include "steam/play/play-service.hpp"
Implementation access point: Player subsystem.
The PlayService is the primary way for clients to get into using Lumiera's Play/Output Subsystem. It allows to perform a timeline or model object. Behind the scenes, this will create and outfit a PlayProcess, which is accessible through the Play::Controller returned as frontend/handle.
the PlayService is instantiated and owned by the OutputDirector, which acts as a central hub for the Player subsystem. Clients should always access this functionality through the lumiera::Play facade interface.
Definition at line 105 of file play-service.hpp.
Public Member Functions | |
PlayService () | |
bring up the global render- and playback service. More... | |
Public Member Functions inherited from Play | |
Controller | perform (ModelPorts, Output) |
Generic point-of-Service for starting playback. More... | |
Controller | perform (Pipes, Output) |
Controller | perform (Timeline) |
Controller | perform (Viewer) |
Controller | perform (Fork) |
Controller | perform (Clip) |
Private Member Functions | |
virtual Controller | connect (ModelPorts, POutputManager) |
Implementation: build a PlayProcess. More... | |
Private Member Functions inherited from NonCopyable | |
NonCopyable (NonCopyable const &)=delete | |
NonCopyable & | operator= (NonCopyable const &)=delete |
Private Attributes | |
std::unique_ptr< ProcessTable > | pTable_ |
Additional Inherited Members | |
Public Types inherited from Play | |
using | Clip = steam::mobject::session::PClip |
using | Fork = steam::mobject::PFork |
using | ModelPorts = lib::IterSource< steam::mobject::ModelPort >::iterator |
using | Output = steam::play::POutputManager |
using | Pipes = lib::IterSource< steam::mobject::OutputDesignation >::iterator |
using | Timeline = steam::asset::PTimeline |
using | Viewer = steam::asset::PViewer |
Static Public Attributes inherited from Play | |
static lib::Depend< Play > | facade |
get an implementation instance of this service More... | |
PlayService | ( | ) |
bring up the global render- and playback service.
This service allows to create individual PlayProcess instances to perform a timeline or similar model object, creating rendered data for output. Client code is assumed to access this service through the lumiera::Play facade.
Definition at line 169 of file play-service.cpp.
|
privatevirtual |
Implementation: build a PlayProcess.
Invoking this function investigates the given exit nodes of the render nodes network and retrieves actual output destinations through the given OutputManager. The goal is to configure a PlayProcess, based on the renderengine and the collection of OutputSlot instances retrieved for each of the given exit nodes. Running this PlayProcess will activate the render engine to deliver calculated media data to the outputs.
Implements Play.
Definition at line 189 of file play-service.cpp.
References steam::play::buildRenderConfiguration(), PlayProcess::initiate(), and FrameRate::PAL.
Referenced by Play::perform().