Lumiera  0.pre.03
»edityourfreedom«
dummy-session-connection.hpp
Go to the documentation of this file.
1 /*
2  dummy-session-connection.hpp - scaffolding placeholder to drive the GUI-Session connection
3 
4  Copyright (C) Lumiera.org
5  2016, 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 
43 #ifndef PROC_MOBJECT_SESSION_DUMMY_SESSION_CONNECTION_H
44 #define PROC_MOBJECT_SESSION_DUMMY_SESSION_CONNECTION_H
45 
46 #include "lib/error.hpp"
47 #include "lib/depend.hpp"
48 #include "lib/nocopy.hpp"
49 #include "lib/util.hpp"
50 
51 #include "lib/diff/tree-diff.hpp"
53 
54 #include <string>
55 
56 namespace lib {
57 namespace diff{
58  class MutationMessage;
59 }}
60 namespace proc {
61 namespace cmd {
62 
63  using control::Command;
64  using control::CommandDef;
65  using control::CommandSetup;
66 
67  /* ============ dedicated Fake-Commands ============ */
68 
69  extern CommandSetup test_fake_injectSequence_1;
70  extern CommandSetup test_fake_injectSequence_2;
71 
72 }
73 namespace mobject {
74 namespace session {
75 
76 //using util::isnil;
77  using std::string;
79 
94  {
95  string nothing_;
96 
99 
101 
102  public:
107 
108 
109  /* == do X == */
110 
111  /* == forget Y == */
112 
113  MutationMessage fabricateSeq1 (string baseID);
114 
115  void applyCopy (MutationMessage const&);
116 
117 
118 #if false
119  void setSolution (string const& solution = "")
120  {
121  UNIMPLEMENTED ("tbw");
122  if (isDeaf())
123  this->transmogrify (solution);
124  }
125 #endif
126  };
127 
128 
129 
130 }}} // namespace proc::mobject::session
131 #endif /*SRC_PROC_MOBJECT_SESSION_DUMMY_SESSION_CONNECTION_HPP_*/
Any copy and copy construction prohibited.
Definition: nocopy.hpp:46
Opaque message to effect a structural change on a target, which is likewise only known in an abstract...
Access point to singletons and other kinds of dependencies designated by type.
Definition: depend.hpp:289
Implementation namespace for support and library code.
Mix-Ins to allow or prohibit various degrees of copying and cloning.
CommandSetup test_fake_injectSequence_1
Tiny helper functions and shortcuts to be used everywhere Consider this header to be effectively incl...
Provision for setup of concrete commands for use by the UI.
Scaffolding to drive the evolution of the Lumiera application.
A token language to represent structural changes in a tree like hierarchical data structure...
Singleton services and Dependency Injection.
Lumiera error handling (C++ interface).
Namespace of Session and user visible high-level objects.
CommandSetup test_fake_injectSequence_2
Helper to abstract creation and lifecycle of a dependency.
Definition: depend.hpp:134
static lib::Depend< DummySessionConnection > instance
access point to set up the scaffolding.
Proc-Layer implementation namespace root.
Definition: id-scheme.hpp:63