next task: implement minimal "Session subsystem" (#318)

mark TODOs in code to make that happen.
Actually, it is not hard to do so, it just requires to combine
all the existing building blocks. When this is done, we can define
the "Session" subsystem as prerequisite for "GUI" in main.cpp

Unless I've made some (copy-n-paste) mistake with defining the facades,
this should be sufficient to pull up "the Session" and automatically
let the Gui-Plugin connect against the SessionCommandService
This commit is contained in:
Fischlurch 2016-12-12 03:45:21 +01:00
parent c144d15e65
commit 014a828c63
5 changed files with 28 additions and 5 deletions

View file

@ -40,6 +40,7 @@
** perspective, since they exchange messages in both directions.
**
** @todo initial draft and WIP-WIP-WIP as of 12/2015
** @todo implement a minimal version of a "Session subsystem" and instantiate SessionCommandService there ///////////TICKET #318
**
** @see TODO_abstract-tangible-test.cpp
**
@ -53,6 +54,7 @@
#include "lib/error.hpp"
#include "include/logging.h"
//#include "lib/idi/entry-id.hpp"
#include "include/session-command-facade.h"
#include "gui/notification-service.hpp"
#include "gui/ctrl/bus-term.hpp"
#include "gui/ctrl/nexus.hpp"
@ -96,6 +98,7 @@ namespace ctrl{
act (GenNode const& command)
{
UNIMPLEMENTED("receive and handle command invocation");
///////////////////////////TICKET #318 : start SessionCommandService. Can then just invoke SessionCommand.facade()...
}
@ -111,7 +114,7 @@ namespace ctrl{
CoreService (ID identity =lib::idi::EntryID<CoreService>())
: BusTerm(identity, uiBusBackbone_)
, uiBusBackbone_{*this}
, activateNotificationService_() // opens the GuiNotification facade interface
, activateNotificationService_() // opens the GuiNotificationService instance
{
INFO (gui, "UI-Backbone operative.");
}

View file

@ -68,7 +68,7 @@ main (int argc, const char* argv[])
netNode.depends (engine);
// playOut.depends (engine);
// playOut.depends (session);
// lumigui.depends (session); //////TODO commented out in order to be able to start up a dummy GuiStarterPlugin
// lumigui.depends (session); ////////////////////////////////////////////TICKET #318 : need to activate this again, after implementing minimal Session subsystem
// lumigui.depends (engine);
player.depends (playOut); //////TODO dummy player, until we're able to render
lumigui.depends (player);

View file

@ -24,6 +24,8 @@
** Implementation of command invocation on the Session interface.
** This is the actual service implementation and runs within Session subsystem.
**
** @todo implement a minimal version of a "Session subsystem" and instantiate SessionCommandService there ///////////TICKET #318
**
*/
#include "proc/control/session-command-service.hpp"

View file

@ -88,6 +88,7 @@ namespace proc {
{
UNIMPLEMENTED ("load an existing session as denoted by the options and register shutdown hook");
return false;
//////////////////////////////////////////////////////////TICKET #318 : start Thread and instantiate SessionCommandService
}
void

View file

@ -217,9 +217,26 @@
</body>
</html>
</richcontent>
<node CREATED="1481320843596" ID="ID_7225903" MODIFIED="1481320847199" TEXT="definieren"/>
<node CREATED="1481320847724" ID="ID_545146501" MODIFIED="1481320850327" TEXT="wo ansiedeln"/>
<node CREATED="1481320850779" ID="ID_1632600003" MODIFIED="1481320854143" TEXT="hochfahren"/>
<node COLOR="#338800" CREATED="1481320843596" ID="ID_7225903" MODIFIED="1481509899511" TEXT="definieren">
<icon BUILTIN="button_ok"/>
</node>
<node CREATED="1481320847724" ID="ID_545146501" MODIFIED="1481320850327" TEXT="wo ansiedeln">
<node CREATED="1481509901926" ID="ID_1612540786" MODIFIED="1481509907305" TEXT="in proc::control"/>
<node CREATED="1481509908527" ID="ID_1079488123" MODIFIED="1481509915351" TEXT="wo implementieren">
<icon BUILTIN="help"/>
</node>
</node>
<node CREATED="1481320850779" ID="ID_1632600003" MODIFIED="1481320854143" TEXT="hochfahren">
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1481509921211" ID="ID_1515469097" MODIFIED="1481510272928" TEXT="TODO: Session-Subsystem implementieren (#318)">
<icon BUILTIN="flag-yellow"/>
</node>
<node BACKGROUND_COLOR="#eee5c3" COLOR="#990000" CREATED="1481510231986" ID="ID_45803267" MODIFIED="1481510243425" TEXT="TODO: dort SessionCommandService instantiieren">
<icon BUILTIN="flag-yellow"/>
</node>
<node CREATED="1481510244184" ID="ID_1521406724" MODIFIED="1481510260635" TEXT="kann dann in CoreService einfach &#xfc;ber die .facade() zugreifen">
<icon BUILTIN="idea"/>
</node>
</node>
</node>
</node>
<node CREATED="1481320870369" ID="ID_454465129" MODIFIED="1481320875916" TEXT="Rolle des &quot;Model&quot; kl&#xe4;ren"/>