Lumiera  0.pre.03
»edityourfreedom«
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
engine-config.h
Go to the documentation of this file.
1 /*
2  ENGINE-CONFIG.h - access point to any kind of engine configuration parameters
3 
4  Copyright (C) Lumiera.org
5  2013, Hermann Vosseler <Ichthyostega@web.de>
6 
7  This program is free software; you can redistribute it and/or
8  modify it under the terms of the GNU General Public License as
9  published by the Free Software Foundation; either version 2 of
10  the License, or (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program; if not, write to the Free Software
19  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 
21 */
22 
23 
29 #ifndef BACKEND_ENGINE_ENGINE_CONFIG_H
30 #define BACKEND_ENGINE_ENGINE_CONFIG_H
31 
32 
33 
34 #include "lib/time.h"
35 
36 
37 #ifdef __cplusplus /* ============== C++ Interface ================= */
38 
39 #include "lib/time/timevalue.hpp"
40 #include "lib/depend.hpp"
41 
42 
43 namespace backend{
44 namespace engine {
45 
46  using lib::time::Duration;
47 
48 
68  {
69  EngineConfig();
70  ~EngineConfig();
71 
73 
74  public:
80 
81 
83 
84 
92 
93 
101  };
102 
103 }} // namespace backend::engine
104 
105 
106 
107 
108 
109 extern "C" {
110 #endif /* =========================== CL Interface ===================== */
111 
112 
114 gavl_time_t lumiera_engine_get_latency ();
115 
116 
117 
118 #ifdef __cplusplus
119 }
120 #endif
121 #endif/*BACKEND_ENGINE_ENGINE_CONFIG_H*/
Common functions for handling of time values.
Access point to singletons and other kinds of dependencies designated by type.
Definition: depend.hpp:275
gavl_time_t lumiera_engine_get_latency()
guess of the current effective engine calculation delay
Duration currentJobPlanningRhythm() const
Time interval for ahead planning of render jobs.
Singleton services and Dependency Injection.
Point of access for any kind of engine configuration, setup and performance tweaks.
Definition: engine-config.h:67
Duration currentEngineLatency() const
reasonable guess of the current engine working delay.
Helper to abstract creation and lifecycle of a dependency.
Definition: depend.hpp:120
Duration is the internal Lumiera time metric.
Definition: timevalue.hpp:380
a family of time value like entities and their relationships.
EngineConfig()
build up a new engine configuration set, based on reasonable default values