#pragma once #include #include #include #include #include // Wrapper class to handle keyboard layout class LayoutMap { private: // Stores mappings for all the virtual key codes to the name of the key std::map keyboardLayoutMap; std::mutex keyboardLayoutMap_mutex; HKL previousLayout = 0; public: // Update Keyboard layout according to input locale identifier void UpdateLayout(); LayoutMap() { UpdateLayout(); } // Function to return the unicode string name of the key std::wstring GetKeyName(DWORD key); };