start working on event handlers

This commit is contained in:
Lion Kortlepel
2024-02-05 20:45:46 +01:00
parent 5468e5c854
commit 6af471f025
3 changed files with 14 additions and 0 deletions

View File

@@ -10,6 +10,7 @@
#include <boost/date_time/posix_time/posix_time_duration.hpp>
#include <boost/thread/scoped_thread.hpp>
#include <boost/thread/synchronized_value.hpp>
#include <sol/forward.hpp>
#include <sol/variadic_args.hpp>
#include <spdlog/logger.h>
@@ -93,6 +94,11 @@ private:
/// This asio context schedules all tasks. It's run in the m_thread thread.
boost::asio::io_context m_io;
/// Event handlers which are legacy-style (by name)
HashMap<std::string, std::string> m_event_handlers_named {};
/// Event handlers which are functions (v4 style)
HashMap<std::string, sol::protected_function> m_event_handlers {};
/// Main (and usually only) lua state of this plugin.
/// ONLY access this from the m_thread thread.
sol::state m_state;