Lumiera
0.pre.03
»edit your freedom«
|
Go to the source code of this file.
Organisational grouping device within the Session model ("Track" / "Media Bin").
Within Lumiera, Tracks bear no direct relation to the rendering or calculation process; rather they are just conceived as a space for the user to arrange the parts included into the edit.
A Fork is a nested tree-shaped structure. When integrated into a sequence, it will be rendered in the familiar way, as tracks with media clips. But at the same time, when accessed through the Asset management view ("bookkeeping view"), a fork appears as nested folder structure to hold media clips.
Most importantly, a Fork defines a system of nested scopes. When discovering details of the wiring, setup and configuration, the Build process will look into the enclosing scope to fill in any part not defined locally at a given media object. Go give a typical example, the volume for sound playback can be defined in some root scope, causing all sound objects to inherit that volume setting – unless shadowed by a more specialised setting closer in scope to the sound object in question. This allows to set up global properties and then to override them locally, for a group of objects located in some sub-fork.
WIP implementation of session core from 2010
as of 2016, this effort is considered stalled but basically valid
Definition in file fork.hpp.
#include "steam/mobject/session/meta.hpp"
#include "lib/idi/entry-id.hpp"
#include "lib/time/timevalue.hpp"
Classes | |
class | Fork |
A Fork serves as grouping device within the Session. More... | |
Typedefs | |
using | ForkID = lib::idi::EntryID< Fork > |
typedef Placement< session::Fork, session::Meta > | PFork |
Namespaces | |
steam | |
Steam-Layer implementation namespace root. | |
steam::mobject | |
Media-Objects, edit operations and high-level session. | |
steam::mobject::session | |
Namespace of Session and user visible high-level objects. | |