Lumiera  0.pre.03
»edit your freedom«
mould.hpp
Go to the documentation of this file.
1 /*
2  MOULD.hpp - builder tool kit for the basic building situations
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 
26 #ifndef MOBJECT_BUILDER_MOULD_H
27 #define MOBJECT_BUILDER_MOULD_H
28 
29 
30 #include "steam/asset/procpatt.hpp"
32 
33 #include <vector>
34 
35 namespace steam {
36 namespace mobject {
37 namespace builder {
38 
39  using std::vector;
40  using asset::PProcPatt;
41  using lib::Symbol;
42 
43 
61  class Mould
62  {
63  public:
64  vector<Mould> operate ();
65 
66  OperationPoint& getLocation (Symbol locationID);
67  };
68 
69 
70  class PipeMould : public Mould
71  {
72  };
73 
74  class CombiningMould : public Mould
75  {
76  };
77 
78  class SourceChainMould : public Mould
79  {
80  };
81 
82  class WiringMould : public Mould
83  {
84  };
85 
86 
87 }}} // namespace steam::mobject::builder
88 #endif
Interface: a workbench-like tool used by the builder for wiring up a specific building situation...
Definition: mould.hpp:61
Definition of a structural asset to express patterns of wiring or processing Processing patterns can ...
Steam-Layer implementation namespace root.
Token or Atom with distinct identity.
Definition: symbol.hpp:117
A point in the render node network under construction.
Abstraction to represent the current point of operation within the builder.