Lumiera  0.pre.03
»edit your freedom«
netnodefacade.cpp
Go to the documentation of this file.
1 /*
2  NetNodeFacade - access point for maintaining a renderfarm node
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 
23 #include "vault/netnodefacade.hpp"
24 #include "lib/depend.hpp"
25 
26 #include <string>
27 
28 namespace vault {
29 
30  using std::string;
31  using lumiera::Subsys;
32 
34  : public Subsys
35  {
36  operator string () const { return "Renderfarm node"; }
37 
38  bool
40  {
41  TODO ("determine, if render node service should be provided");
42  return false;
43  }
44 
45  bool
46  start (lumiera::Option&, SigTerm termination) override
47  {
48  UNIMPLEMENTED ("open a render node server port and register shutdown hook");
49  return false;
50  }
51 
52  void
53  triggerShutdown () noexcept override
54  {
55  UNIMPLEMENTED ("initiate shutting down the render node");
56  }
57 
58  bool
59  checkRunningState () noexcept override
60  {
61  //Lock guard{*this};
62  TODO ("implement detecting running state");
63  return false;
64  }
65  };
66 
67  namespace {
69  }
70 
71 
72 
73 
75  Subsys&
77  {
78  return theDescriptor();
79  }
80 
81 
82 
83 } // namespace vault
Dependencies and lifecycle of a partially independent Subsystem of the Application.
Definition: subsys.hpp:61
bool shouldStart(lumiera::Option &) override
query application option state to determine if this subsystem should be activated.
Global control interface for running Lumiera as a renderfarm node.
Frontend for handling the Lumiera application commandline arguments.
Definition: option.hpp:68
Access point to singletons and other kinds of dependencies designated by type.
Definition: depend.hpp:280
bool checkRunningState() noexcept override
whether this subsystem is actually operational.
static lumiera::Subsys & getDescriptor()
provide a descriptor for lumiera::AppState, wired accordingly to allow main to start and stop a node ...
Singleton services and Dependency Injection.
bool start(lumiera::Option &, SigTerm termination) override
attempt to bring up this subsystem up.
Vault-Layer implementation namespace root.
void triggerShutdown() noexcept override
initiate termination of this subsystem.