23#define KTECH_DEFINITION
24#include "../../ktech.hpp"
25#undef KTECH_DEFINITION
51 [[nodiscard]]
auto Is(
const std::string& stringKey)
const -> bool;
52 [[nodiscard]]
auto Is(
char charKey)
const -> bool;
53 [[nodiscard]]
auto Bigger(
char charKey)
const -> bool;
54 [[nodiscard]]
auto Smaller(
char charKey)
const -> bool;
55 [[nodiscard]]
auto Between(
char start,
char end)
const -> bool;
56 [[nodiscard]]
auto GetInt() const -> uint8_t;
69 termios m_oldTerminalAttributes;
71 bool m_changedThisTick =
false;
72 std::thread m_inputLoop;
73 std::vector<std::string> m_inputQueue;
74 std::mutex m_inputQueueMutex;
76 std::vector<std::shared_ptr<Handler>> m_stringHandlers;
77 std::vector<std::shared_ptr<Handler>> m_rangeHandlers;
79 std::vector<CallbackGroup*> m_groups;
92 auto CreateCallback(
const std::string& stringKey,
const std::function<
bool()>& callback) -> std::shared_ptr<Callback>;
93 auto CrateRangedCallback(
char start,
char end,
const std::function<
bool()>& callback) -> std::shared_ptr<Callback>;
101 void RegisterCallbackGroup(CallbackGroup* callbackGroup);
107 void SetCallbackGroupToBeRemoved(CallbackGroup* callbackGroup);
110 void CallStringHandlers();
111 void CallRangeHandlers();
Complete engine containing all engine components.
Definition engine.hpp:41
Engine component responsible for outputting rendered images.
Definition output.hpp:42