Lumiera  0.pre.03
»edityourfreedom«
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
dispatch-table.hpp
Go to the documentation of this file.
1 /*
2  DISPATCH-TABLE.hpp - implementation of frame job creation
3 
4  Copyright (C) Lumiera.org
5  2012, 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 
30 #ifndef PROC_ENGINE_DISPATCH_TABLE_H
31 #define PROC_ENGINE_DISPATCH_TABLE_H
32 
33 #include "proc/common.hpp"
35 
36 
37 
38 namespace proc {
39 namespace engine {
40 
41  using lib::time::TimeSpan;
42  using lib::time::FSecs;
43  using lib::time::Time;
44 //
45 // class ExitNode;
46 
51  : public Dispatcher
52  {
53 
54  /* ==== Dispatcher interface ==== */
55 
56  FrameCoord locateRelative (FrameCoord const&, FrameCnt frameOffset);
57  bool isEndOfChunk (FrameCnt, ModelPort port);
58  JobTicket& accessJobTicket (ModelPort, TimeValue nominalTime);
59 
60 
61  protected:
64 
65  public:
67  : segment_(Time::ZERO, FSecs(5))
68  {
69  UNIMPLEMENTED ("anything regarding the Engine backbone");
70  }
71 
72  };
73 
74 
75 
76 }} // namespace proc::engine
77 #endif
FrameCoord locateRelative(FrameCoord const &, FrameCnt frameOffset)
core dispatcher operation: based on the coordinates of a reference point, establish binding frame num...
int64_t FrameCnt
Definition: job.h:94
Service abstraction within the render engine for generating render jobs.
Basic set of definitions and includes commonly used together.
Lumiera's internal time value datatype.
Definition: timevalue.hpp:226
bool isEndOfChunk(FrameCnt, ModelPort port)
boost::rational< long > FSecs
rational representation of fractional seconds
Definition: timevalue.hpp:205
JobTicket & accessJobTicket(ModelPort, TimeValue nominalTime)
TimeSpan segment_
timerange covered by this RenderGraph
Internal abstraction: a service within the engine for translating a logical calculation stream (corre...
Definition: dispatcher.hpp:83
effective coordinates of a frame to be calculated.
Definition: frame-coord.hpp:65
A time interval anchored at a specific point in time.
Definition: timevalue.hpp:467
Proc-Layer implementation namespace root.
Definition: id-scheme.hpp:63
basic constant internal time value.
Definition: timevalue.hpp:80
execution plan for pulling a specific exit node.
Definition: job-ticket.hpp:84