]> git.localhorst.tv Git - blank.git/blob - src/runtime.hpp
014cd3224239aa5c28fa0d537e6ef9446523b31b
[blank.git] / src / runtime.hpp
1 #ifndef BLANK_RUNTIME_HPP_
2 #define BLANK_RUNTIME_HPP_
3
4 #include "app.hpp"
5
6 #include <cstddef>
7
8
9 namespace blank {
10
11 class Runtime {
12
13 public:
14         enum Mode {
15                 NORMAL,
16                 FRAME_LIMIT,
17                 TIME_LIMIT,
18                 FIXED_FRAME_LIMIT,
19                 ERROR,
20         };
21
22         Runtime() noexcept;
23
24         void ReadArgs(int argc, const char *const *argv);
25
26         int Execute();
27
28 private:
29         const char *name;
30         Mode mode;
31         std::size_t n;
32         std::size_t t;
33         Application::Config config;
34
35 };
36
37 }
38
39 #endif