Lumiera  0.pre.03
»edityourfreedom«
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
common-services.cpp File Reference

Go to the source code of this file.

Description

Wire library facilities directly into application core services This translation unit serves to complete the definition of some parts of the Lumiera library.

While library facilities usually are written to be self-contained, at places we want "magic" integration with central services, without incurring tight coupling to the application core. In these special cases, the library just declares some function or constructor variant, which is then defined here, causing the corresponding code to be emitted into the Lumiera application library. Obviously, to use such integrated "magic" short-cuts, client code needs to link against liblumieracore.so

The typical usage pattern is to allow for references by name-ID, which is then magically resolved behind the scenes, using the Advice system or more generic query facilities. This pattern allows even to tap into facilities known to exist within some very specific subsystem, like e.g. some session service. A typical example is Lumiera's time and time quantisation framework, which allows a grid aligned time to refer to a frame grid definition known to be provided by one of the session's timelines.

See also
advice.hpp
timequant.hpp
quantiser.hpp

Definition in file common-services.cpp.

Namespaces

 lib
 Implementation namespace for support and library code.
 
 lib::time