#pragma once #include #include #include #include "AModule.hpp" #include "util/command.hpp" #include "util/json.hpp" #include "util/sleeper_thread.hpp" namespace waybar::modules { class CABI : public AModule { public: CABI(const std::string&, const std::string&, const Json::Value&); virtual ~CABI(); private: void* cabi_instance_ = nullptr; std::function wbcabi_init_ = nullptr; std::function wbcabi_deinit_ = [](void*) {}; std::function wbcabi_last_error_str_ = [](void*) { return nullptr; }; }; } // namespace waybar::modules