Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
operationpoint.cpp
Go to the documentation of this file.
1/*
2 OperationPoint - abstraction representing the point where to apply a build instruction
3
4 Copyright (C)
5 2008, 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
25#include "steam/asset/media.hpp"
26#include "steam/asset/proc.hpp"
28#include "steam/streamtype.hpp"
29//#include "common/util.hpp"
30
31//#include <boost/ptr_container/ptr_vector.hpp>
32
33namespace steam {
34namespace mobject {
35namespace builder {
36
37// using util::isnil;
38 using engine::NodeFactory;
39
41 struct PNode
42 {
43 ;
44 };
45
46
47 struct RefPoint
48 {
50
51 vector<PNode> sources_;
53
54
56 RefPoint (RefPoint const& pred)
57 : alloc_(pred.alloc_),
58 sources_(pred.sources_),
59 sType_(pred.sType_)
60 { }
61
63 RefPoint (NodeFactory& nFactory, asset::Media const& srcMedia)
64 : alloc_(nFactory),
65 sType_(0)
66 {
67 establishMediaChannels (srcMedia);
69 }
70
71
72 private:
73 void
75 {
76 UNIMPLEMENTED ("find out about the actual channels for this stream to connect");
77 }
78
79 void
81 {
82 UNIMPLEMENTED ("calculate / decide on the effective stream type used within this pipe");
83 }
84
85 };
86
87
88
90 : refPoint_(new RefPoint (nFact, srcMedia))
91 { }
92
93
95 : refPoint_(new RefPoint (sourcePoint))
96 { }
97
98
99 void
101 {
102 UNIMPLEMENTED ("Actually-really-finally create a node corresponding to this processing asset");
103 }
104
105
106 void
108 {
109 UNIMPLEMENTED ("Actually-really-finally do a mixing output connection");
110 }
111
112
113
114}}} // namespace steam::mobject::builder
key abstraction: media-like assets
Definition media.hpp:64
key abstraction: data processing asset
Definition proc.hpp:64
Create processing nodes based on given objects of the high-level model.
A point in the render node network under construction.
void join(OperationPoint &target)
connect the output this OperationPoint refers such as to connect or combine with the input of the alr...
OperationPoint(engine::NodeFactory &, asset::Media const &srcMedia)
void attach(asset::Proc const &)
create node(s) corresponding to the given Processor-Asset and wire them as a successor to this Operat...
Media data represented a specific kind of Asset.
Steam-Layer implementation namespace root.
A factory to build processing nodes.
Abstraction to represent the current point of operation within the builder.
Data processing Plugins and Codecs can be treated as a specific Kind of Asset.
Framework for classification of media streams.
RefPoint(NodeFactory &nFactory, asset::Media const &srcMedia)
initiate a connection chain at a real source
void establishMediaChannels(asset::Media const &srcMedia)
RefPoint(RefPoint const &pred)
just continue connection chaining