Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
calc-stream.hpp
Go to the documentation of this file.
1/*
2 CALC-STREAM.hpp - abstraction representing a series of scheduled calculations
3
4 Copyright (C)
5 2011, 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
35#ifndef STEAM_ENGINE_CALC_STREAM_H
36#define STEAM_ENGINE_CALC_STREAM_H
37
38
39#include "lib/error.hpp"
43//#include "include/dummy-player-facade.h"
44//#include "include/display-facade.h"
45//#include "common/instancehandle.hpp"
46//#include "lib/singleton-ref.hpp"
47//
48//#include <string>
49#include <vector>
50#include <memory>
51
52
53namespace steam {
54namespace engine{
55
56 namespace error = lumiera::error;
57
58// using std::string;
59// using lumiera::Subsys;
60// using lumiera::Display;
61// using lumiera::DummyPlayer;
62
63 class RenderEnvironment;
64
65
66
67
68
69
70 /*****************************************************/
88 {
89 std::shared_ptr<RenderDrive> drive_;
91
92 protected:
93 CalcStream (RenderEnvironment& abstractEngine)
94 : drive_{}
95 { }
96
97 friend class EngineService;
98
99
100 void
102 {
103 UNIMPLEMENTED ("set up dispatcher to start calculating and feeding to the given output sink");
104 }
105
106
107 public:
109 : drive_{}
110 { }
111
113
114 // using standard copy operations
115
116
117
118 };
119
120 using CalcStreams = std::vector<CalcStream>;
121
122
123
124
125
126}}// namespace steam::engine
127#endif /*STEAM_ENGINE_CALC_STREAM_H*/
A calculation stream groups and abstracts a series of calculation jobs, delivering frames into the co...
CalcStream(RenderEnvironment &abstractEngine)
void sendToOutput(play::DataSink)
std::shared_ptr< RenderDrive > drive_
A service to schedule series of calculations, delivering the rendered data into an external output si...
Abstract definition of the environment hosting a given render activity (CalcStream).
denotes an opened connection ready to receive media data for output.
Lumiera error handling (C++ interface).
std::vector< CalcStream > CalcStreams
Steam-Layer implementation namespace root.
An (abstract) capability to send media data to an external output.
The active core within a CalcStream, causing the render mechanism to re-trigger repeatedly.
How to define a timing specification or constraint.