#pragma once #include "platform.h" #include namespace ks { // Discovery, pairing and optional encrypted input within the resident process. class LanService { struct Impl; std::unique_ptr impl; public: explicit LanService(const std::filesystem::path &); ~LanService(); Bytes command(const Bytes &); bool inputEnabled() const; bool tickInput(bool allowEnter = true); bool keyboard(const KBDLLHOOKSTRUCT &, bool down); bool mouse(UINT, const MSLLHOOKSTRUCT &, bool allowEnter); bool takeInputChange(); void cancelInput(); }; }