/** * @file controllPad.h * @author Alexander Klein (alex@kleiax.de) * @brief * @version 0.1 * @date 2023-03-30 * * @copyright Copyright (c) 2023 * */ #pragma once #include #include "controllPadInput.h" class ControllPad { public: ControllPad(); bool loop(); void setMenuControll(MenuControl* menuControll) { this->menuControl = menuControl; } const ControllPadInput * getControllPadDataPtr(uint16_t maxElapsedTime = 0) const; bool isControllPadConnected() const { return this->connected; } private: MenuControl* menuControl = nullptr; ControllPadInput controllInput; bool connected = false; bool updated = false; bool firstButtonPress = false; uint16_t disconnectTime = 50; uint16_t loopDelay = 5; uint32_t lastMessageRecive = 0; uint32_t lastLoopMillis = 0; };