Lumiera  0.pre.03
»edityourfreedom«
config-resolver.hpp
Go to the documentation of this file.
1 /*
2  CONFIG-RESOLVER.hpp - concrete setup for rule based configuration
3 
4  Copyright (C) Lumiera.org
5  2008, Hermann Vosseler <Ichthyostega@web.de>
6  2012
7 
8  This program is free software; you can redistribute it and/or
9  modify it under the terms of the GNU General Public License as
10  published by the Free Software Foundation; either version 2 of
11  the License, or (at your option) any later version.
12 
13  This program is distributed in the hope that it will be useful,
14  but WITHOUT ANY WARRANTY; without even the implied warranty of
15  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  GNU General Public License for more details.
17 
18  You should have received a copy of the GNU General Public License
19  along with this program; if not, write to the Free Software
20  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21 
22 */
23 
24 
46 #ifndef PROC_CONFIG_RESOLVER
47 #define PROC_CONFIG_RESOLVER
48 
49 #include "common/query.hpp"
50 #include "common/config-rules.hpp"
51 #include "lib/depend.hpp"
52 
53 // types for explicit specialisations....
55 #include "proc/asset/procpatt.hpp"
56 #include "proc/asset/pipe.hpp"
57 #include "proc/asset/timeline.hpp"
58 #include "proc/asset/sequence.hpp"
59 
60 
61 
62 namespace proc {
63 
64 
65 
66 
67  /* ============= global configuration ==================== */
68 
75  , const proc::asset::ProcPatt
78  > ::List
80 
86  : public lumiera::query::ConfigRules<InterfaceTypes>
87  {
88 
89  public:
91 
92  };
93 
94 
95 } // namespace proc
96 #endif
Structural building block of the session: a sequence of clips.
Definition of a structural asset to express patterns of wiring or processing Processing patterns can ...
A "processing pipe" represented as Asset.
Generic query interface for retrieving objects matching some capability query.
Basic and generic representation of an internal query.
LinkedElements< Nummy > List
default case: ownership for heap allocated nodes
Organisational grouping device within the Session model ("Track" / "Media Bin").
Access point to singletons and other kinds of dependencies designated by type.
Definition: depend.hpp:289
static lib::Depend< ConfigResolver > instance
Singleton factory instance, configured with the actual implementation type.
Singleton services and Dependency Injection.
user-visible Interface to the ConfigRules subsystem.
structural asset corresponding to the part of the model forming a processing pipe for generating medi...
Definition: pipe.hpp:79
Interface for accessing rule based configuration.
A Fork serves as grouping device within the Session.
Definition: fork.hpp:103
Proc-Layer implementation namespace root.
Definition: id-scheme.hpp:63
lib::meta::Types< proc::mobject::session::Fork, proc::asset::Pipe, const proc::asset::ProcPatt, proc::asset::Timeline, proc::asset::Sequence >::List InterfaceTypes
the list of all concrete types participating in the rule based config query system ...
"Processing Pattern" is a structural Asset representing information how to build some part of the ren...
Definition: procpatt.hpp:61
Top level structural element within the session.