Skip to content

node/app_delegate.hpp

Namespaces

Name
boost
boost::filesystem
sgns
sgns::application

Classes

Name
class sgns::AppDelegate
App delegate for the SuperGenius daemon node.

Source code

#ifndef SUPERGENIUS_NODE_APP_DELEGATE_HPP
#define SUPERGENIUS_NODE_APP_DELEGATE_HPP
#include <boost/program_options.hpp>
#include <iostream>


namespace boost
{
namespace filesystem
{
    class path;
}
}

namespace sgns
{
class node_flags;
}

namespace sgns
{
    namespace application
    {
        class BlockProducingNodeApplication;
        class ValidatingNodeApplication;
        class AppConfigurationImpl;
    } // namespace application


class AppDelegate {
public:
    explicit AppDelegate ();
    ~AppDelegate ();
    int init(int argc, char * const * argv);
    void run(/*boost::filesystem::path const &, sgns::node_flags const & flags*/);
    void exit();
public:
    // boost::program_options::variables_map vm;
private:
    void init_node(int argc, char * const * argv);
    std::shared_ptr<application::BlockProducingNodeApplication> app_production;
    std::shared_ptr<application::ValidatingNodeApplication> app_validating;
    std::shared_ptr<application::AppConfigurationImpl> configuration;
};
}  // namespace sgns
#endif

Updated on 2026-03-04 at 13:10:44 -0800