#pragma once #include #include #include "NodeInfo.h" #include #include #include #include "Config.h" class NodeContext { public: NodeContext(); NodeContext(std::initializer_list> initialLabels); ~NodeContext(); WiFiUDP* udp; String hostname; IPAddress localIP; NodeInfo self; std::map* memberList; Config config; using EventCallback = std::function; std::map> eventRegistry; void on(const std::string& event, EventCallback cb); void fire(const std::string& event, void* data); };