Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
libgavl.hpp
Go to the documentation of this file.
1/*
2 LILBGAVL.hpp - 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
44#ifndef STEAM_EXTERNAL_LIBGAVL_H
45#define STEAM_EXTERNAL_LIBGAVL_H
46
47
49
50
51
52namespace steam {
53namespace external {
54
55
56 using lib::Symbol;
57
60
61
62 class LibGavl;
63
73 : public ImplFacade
74 {
75 protected:
77 : ImplFacade("GAVL")
78 { }
79
80 friend class LibGavl;
81
82 public:
83 virtual bool operator== (ImplFacade const& other) const;
84 virtual bool operator== (StreamType const& other) const;
85
86 virtual bool canConvert (ImplFacade const& other) const;
87 virtual bool canConvert (StreamType const& other) const;
88
90 virtual DataBuffer* createFrame () const;
91 };
92
93
94 class LibGavl
96 {
97 protected:
98
99 public:
100 virtual Symbol getLibID() const { return "GAVL"; }
101
102 virtual ImplFacadeGAVL const& getImplFacade (TypeTag&);
103 };
104
105
106
107}} // namespace steam::external
108#endif
Token or Atom with distinct identity.
Definition symbol.hpp:120
opaque placeholder (type erasure) for implementation specific type info.
A (more or less) concrete implementation type, wired up as a facade providing the basic set of operat...
placeholder type for the contents of a data buffer.
Concrete media lib implementation facade allowing to work with GAVL data frames and types in an imple...
Definition libgavl.hpp:74
virtual StreamType::MediaKind getKind() const
virtual bool canConvert(StreamType const &other) const
virtual DataBuffer * createFrame() const
virtual bool operator==(ImplFacade const &other) const
virtual bool canConvert(ImplFacade const &other) const
virtual ImplFacadeGAVL const & getImplFacade(TypeTag &)
Use an type information struct, which actually has to be a GAVL frame type (TODO),...
Definition libgavl.cpp:58
virtual Symbol getLibID() const
Definition libgavl.hpp:100
Abstraction to represent (metadata) of an external library to handle media data Lumiera delegates mos...
Steam-Layer implementation namespace root.