#ifndef _CINPUT_HPP_ #define _CINPUT_HPP_ /*** SDL Header Files ***/ #include /*** Custom Header Files ***/ #include "cKeyboard.hpp" /*** DLL Header File ***/ #include "dllExport.h" /*** Custom Header Files ***/ #include "../UtilityEngine/cString.hpp" using UtilityEngine::cString; namespace InputEngine { /* Singleton */ class EXPORT_FROM_MYDLL cInput { private: cInput(); ~cInput(); public: static cInput& Inst(); static void Delete(); /// Functions const bool Initialize() const; const bool Setup(); void CleanUp(); /* Checks all inputs */ void CheckInputs( const SDL_Event& event ); /* Checks all keyboards */ void CheckKeyboards(); /* Checks all Joysticks */ void CheckJoysticks(); /* Adds a keyboard to cInput interneal list to be called when CheckInputs is called */ void AddKeyboard( InputEngine::cKeyboard* keyboard ); /* Deletes a keyboard in cInput internal list */ void DeletesKeyboard( const cString& label ); /* Deletes all keyboards in cInput internal list */ void DeleteAllKeyboards(); /* Removes the keyboard from cInput internal list */ void RemoveKeyboard( const cString& label ); /* Removes all keyboards from cInput internal list. */ void RemoveAllKeyboards(); void DeleteAllInputs(); void RemoveAllInputs(); /// Sets /// Gets /* Gets return true if Input was initialized */ const bool IsInit() const; private: std::vector m_keyboards; SDL_Event m_event; static cInput* sp_inst;// = nullptr };/// END CLASS DEFINITION cInput }/// END NAMESPACE DEFINITION InputEngine #endif/// END IFNDEF _CINPUT_HPP_