Lumiera  0.pre.03
»edit your freedom«
engine-config.cpp
Go to the documentation of this file.
1 /*
2  EngineConfig - access point to any kind of engine configuration parameters
3 
4  Copyright (C)
5  2013, 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 
24 #include "lib/time/timevalue.hpp"
25 #include "lib/rational.hpp"
26 
27 
29 using lib::time::FSecs;
30 using util::Rat;
31 
32 
33 namespace vault{
34 namespace gear {
35 
36  namespace { // Hard wired placeholder settings...
37 
38  const auto EIGHTY_PERCENT = 8_r/10;
39 
40  const Duration DEFAULT_ENGINE_LATENCY = EIGHTY_PERCENT * Duration(1, FrameRate{25});
41  const Duration DEFAULT_JOB_PLANNING_TURNOVER(FSecs(3,2));
42 
43  }//(End)hard wired settings
44 
45 
46  EngineConfig::~EngineConfig() { }
47 
48 
51 
52 
59  { }
60 
61 
62 
63 
64  Duration
66  {
67  return DEFAULT_ENGINE_LATENCY;
68  }
69 
70 
71  Duration
73  {
74  return DEFAULT_JOB_PLANNING_TURNOVER;
75  }
76 
77 }} // namespace vault::gear
Rational number support, based on boost::rational.
Framerate specified as frames per second.
Definition: timevalue.hpp:655
Duration currentEngineLatency() const
reasonable guess of the current engine working delay.
static lib::Depend< EngineConfig > get
access point to the Engine Interface.
access point to configuration of engine parameters
Access point to singletons and other kinds of dependencies designated by type.
Definition: depend.hpp:280
EngineConfig()
build up a new engine configuration set, based on reasonable default values
boost::rational< int64_t > FSecs
rational representation of fractional seconds
Definition: timevalue.hpp:220
Duration is the internal Lumiera time metric.
Definition: timevalue.hpp:468
Duration currentJobPlanningRhythm() const
Time interval for ahead planning of render jobs.
a family of time value like entities and their relationships.
Vault-Layer implementation namespace root.