Lumiera  0.pre.03
»edit your freedom«
libgavl.cpp
Go to the documentation of this file.
1 /*
2  ImplFacadeGAVL - facade for integrating the GAVL media handling library
3 
4  Copyright (C)
5  2008, Hermann Vosseler <Ichthyostega@web.de>
6 
7   **Lumiera** is free software; you can redistribute it and/or modify it
8   under the terms of the GNU General Public License as published by the
9   Free Software Foundation; either version 2 of the License, or (at your
10   option) any later version. See the file COPYING for further details.
11 
12 * *****************************************************************/
13 
14 
21 #include "steam/common.hpp"
24 
25 extern "C" {
26 #include <gavl/gavl.h>
27 }
28 
29 
30 namespace steam {
31 namespace external {
32 
33  using control::STypeManager;
36 
37  void
38  provide_GAVL_stream_implementation_types ()
39  {
40  STypeManager& typeManager = STypeManager::instance();
41  UNIMPLEMENTED ("wire up a ImplFacade for GAVL implemented media streams");
42  }
43 
44  namespace { // internal functionality
45 
46  LifecycleHook _register_gavl_types_ (ON_STREAMTYPES_RESET, &provide_GAVL_stream_implementation_types);
47  }
48 
49 
57  ImplFacadeGAVL const&
59  {
60  TODO ("any chance to verify that the TypeTag actually points to a GAVL frame type descriptor?");
61  UNIMPLEMENTED ("wire up an impl facade with the correct GAVL lib functions for the data type in question");
62  }
63 
64 
65 
66 }} // namespace steam::external
Basic set of definitions and includes commonly used together.
opaque placeholder (type erasure) for implementation specific type info.
Definition: streamtype.hpp:169
Concrete media lib implementation facade allowing to work with GAVL data frames and types in an imple...
Definition: libgavl.hpp:52
Steam-Layer implementation namespace root.
Interface to the stream type system.
static lib::Depend< STypeManager > instance
access the system-wide stream type manager instance.
define and register a callback for a specific lifecycle event.
Definition: lifecycle.h:67
const char * ON_STREAMTYPES_RESET
triggered to load the generic pristine default
virtual ImplFacadeGAVL const & getImplFacade(TypeTag &)
Use an type information struct, which actually has to be a GAVL frame type (TODO), to wire up an ImplFacade such as to deal with GAVL data frames of this type.
Definition: libgavl.cpp:58
Concrete implementation of the MediaImplLib facade to work with libGAVL