Lumiera  0.pre.03
»edit your freedom«
display-service.cpp File Reference

Go to the source code of this file.

Description

Implementation of Displayer Service, exposed as a public interface.

This service allows to set up display slots, which can be handed over to client code in the course of the play process for outputting frames.

Deprecated:
This is a first draft as of 1/2009, and likely to be superseded by a better design, where rather the provider of an output facility registers with the OutputManager in the core.

Definition in file display-service.cpp.

Functions

 LUMIERA_INTERFACE_INSTANCE (lumieraorg_interfacedescriptor, 0, lumieraorg_DisplayFacade_descriptor, NULL, NULL, NULL, LUMIERA_INTERFACE_INLINE(name, const char *,(LumieraInterface ifa), {(void) ifa;return "Display";}), LUMIERA_INTERFACE_INLINE(brief, const char *,(LumieraInterface ifa), {(void) ifa;return "UI Interface: service for outputting frames to a viewer or display";}), LUMIERA_INTERFACE_INLINE(homepage, const char *,(LumieraInterface ifa), {(void) ifa;return "http://www.lumiera.org/develompent.html" ;}), LUMIERA_INTERFACE_INLINE(version, const char *,(LumieraInterface ifa), {(void) ifa;return "0.1~pre";}), LUMIERA_INTERFACE_INLINE(author, const char *,(LumieraInterface ifa), {(void) ifa;return "Hermann Vosseler";}), LUMIERA_INTERFACE_INLINE(email, const char *,(LumieraInterface ifa), {(void) ifa;return "Ichthyostega@web.de";}), LUMIERA_INTERFACE_INLINE(copyright, const char *,(LumieraInterface ifa), {(void) ifa;return "Copyright (C)\ " 2009, Hermann Vosseler< Ichthyostega @web.de >"; }), LUMIERA_INTERFACE_INLINE(license, const char *,(LumieraInterface ifa), {(void) ifa; return " **Lumiera **is free software;you can redistribute it and/or modify it\" "under the terms of the GNU General Public License as published by the\" "Free Software Foundation;either version 2 of the License, or(at your\" "option) any later version. See the file COPYING for further details." ; }), LUMIERA_INTERFACE_INLINE(state, int,(LumieraInterface ifa), {(void) ifa; return LUMIERA_INTERFACE_EXPERIMENTAL;}), LUMIERA_INTERFACE_INLINE(versioncmp, int,(const char *a, const char *b), {(void) a;(void) b; return 0;}))
 
 LUMIERA_INTERFACE_INSTANCE (lumieraorg_Display, 0, lumieraorg_DisplayService, LUMIERA_INTERFACE_REF(lumieraorg_interfacedescriptor, 0, lumieraorg_DisplayFacade_descriptor), NULL, NULL, LUMIERA_INTERFACE_INLINE(allocate, void,(LumieraDisplaySlot slotHandle), { if(!_instance) { lumiera_error_set(LUMIERA_ERROR_LIFECYCLE, 0);return;} REQUIRE(slotHandle);try { _instance().allocate(slotHandle, true);} catch(lumiera::Error &){ } }), LUMIERA_INTERFACE_INLINE(release, void,(LumieraDisplaySlot slotHandle), { if(!_instance) { lumiera_error_set(LUMIERA_ERROR_LIFECYCLE, 0);return;} REQUIRE(slotHandle);_instance().allocate(slotHandle, false);}), LUMIERA_INTERFACE_INLINE(put, void,(LumieraDisplaySlot slotHandle, LumieraDisplayFrame frame), { REQUIRE(_instance &&!lumiera_error_peek());REQUIRE(slotHandle);DisplayerSlot &slot=_instance().resolve(slotHandle);slot.put(frame);}))
 

Variables

lib::Depend< DisplayService > _instance
 a backdoor for the C Language impl to access the actual SessionCommand implementation...
 

Namespaces

 stage
 Lumiera GTK UI implementation root.