Unravel Engine C++ Reference
Loading...
Searching...
No Matches
service.h
Go to the documentation of this file.
1#pragma once
2
3#include <cmd_line/parser.h>
4#include <context/context.hpp>
5#include <entt/meta/meta.hpp>
6
8{
9 std::string lib_name;
10 std::string type_name;
11};
12
17
18#define SERVICE_RESULT_EXIT 0
19#define SERVICE_RESULT_RUN 1
20#define SERVICE_RESULT_RELOAD 2
21
22struct service
23{
24 service(int argc, char* argv[]);
25 auto load(const module_desc& desc) -> bool;
26 auto unload(const module_data& module) -> bool;
27
28 auto load(const std::vector<module_desc>& descs) -> bool;
29 auto unload() -> bool;
30
31 auto init() -> bool;
32 auto process() -> int;
33 auto interrupt() -> bool;
34
36
37private:
38 rtti::context ctx_;
39 cmd_line::parser parser_;
40 std::vector<module_data> modules_;
41};
42
43int service_main(const char* name, int argc, char* argv[]);
std::string name
Definition hub.cpp:27
int service_main(const char *name, int argc, char *argv[])
Definition service.cpp:166
module_desc desc
Definition service.h:15
std::string type_name
Definition service.h:10
std::string lib_name
Definition service.h:9
auto interrupt() -> bool
Definition service.cpp:117
auto get_cmd_line_parser() -> cmd_line::parser &
Definition service.cpp:161
service(int argc, char *argv[])
Definition service.cpp:14
auto process() -> int
Definition service.cpp:138
auto unload() -> bool
Definition service.cpp:80
auto load(const module_desc &desc) -> bool
Definition service.cpp:18
auto init() -> bool
Definition service.cpp:93