/*! \file mainpage.dox \brief Introduction page \mainpage Introduction Welcome to the documentation of Kodi. This starting page is meant to help people find their way around the code. This documentation is a work in progress - only some of the code has thus far been documented and we welcome any and all input to documenting it further. Documentation serves both to help newcomers get to grips with the source quickly, and to highlight possible deficiencies in the code or interfaces. Due to the projects history you may find XBMC mentioned in the docs, this was the previous name of the project. Any help/suggestions are more than welcome. \section doxy_whatisxbmc What is Kodi? Kodi is a free, open source (GPL) multimedia player that runs on Linux, Mac OS X (10.4 and later), Windows, IOS and Android. See http://kodi.tv for more details. */ // Groups definition /*! \defgroup jobs Asynchronous jobs Threaded job execution */ /*! \defgroup guilib Guilib classes Guilib classes */ /*! \defgroup graphics Graphics and Screen \ingroup guilib Everything around graphics and Screen */ ^/*! \defgroup thumbs Thumbs \ingroup graphics Everything around the thumbs */ /*! \defgroup textures Textures and Fonts \ingroup graphics Everything about textures and fonts */ /*! \defgroup items Items \ingroup guilib Everything around items */ /*! \defgroup labels Labels \ingroup guilib Everything around labels */ /*! \defgroup lists Lists \ingroup guilib Everything around lists */ /*! \defgroup strings Strings and Localization \ingroup guilib Everything around Strings and localization */ /*! \defgroup tinyxml XML Parser \ingroup strings Tiny XML - XML Parser */ /*! \defgroup winref Window Reference \ingroup guilib The window reference */ /*! \defgroup winmsg Windows and Messages \ingroup winref Windows and messages */ /*! \defgroup controls Controls \ingroup winref Control classes */ /*! \defgroup winman Window Manager and Callbacks \ingroup winref Everything about window manager and callbacks */ /*! \defgroup actionkeys Actions and Keys \ingroup winref Everything around action mapping and key processing */ /*! \defgroup database Database Everything around the database */ /*! \defgroup filesystem Filesystem Everything around the filesystem */ /*! \defgroup input Input Everything around input */ /*! \defgroup keyboard Keyboard \ingroup input Keyboard input is processed by \ref CInputManager and forwarded to registered keyboard handlers (e.g. game clients) or as actions to the UI: - If no keyboard handlers are registered or if they don't consume events, the keyboard events are forwarded to the UI via \ref CInputManager::OnKey. - Clients (e.g. game clients implementing \ref KEYBOARD::IKeyboardHandler) call \ref CInputManager::RegisterKeyboardHandler to register themselves as eligible for keyboard input events. - Keyboards can emulate Joysticks as described in KEYBOARD::CJoystickEmulation. */ /*! \defgroup mouse Mouse \ingroup input Everything around mouse Mouse input is processed by \ref CInputManager and forwarded to registered mouse handlers (e.g. game clients) or as actions to the UI: - If no mouse handlers are registered or if they don't consume events, the mouse input events are forwarded to the UI via \ref CInputManager::ProcessMouse. - Clients (e.g. game clients implementing \ref MOUSE::IMouseInputHandler) call \ref CInputManager::RegisterMouseHandler to register themselves as eligible for mouse input events. - Mouse events (from \ref CInputManager::OnEvent) are collected via implementations of \ref MOUSE::IMouseDriverHandler and transformed into higher level features by \ref MOUSE::IMouseButtonMap instances before they are sent to the handlers. */ /*! \defgroup joystick Joystick \ingroup input Everything around joystick */ /*! \defgroup touch Touch \ingroup input Everything around touch detection */ /*! \defgroup touch_generic Touch \ingroup touch Everything around generic touch detection */ /*! \defgroup games Everything about RetroPlayer. */ /*! \defgroup interface Interfaces Everything around interfaces */ /*! \defgroup info Info \ingroup interface Everything around the info interface */ /*! \defgroup jsonrpc JSON-RPC \ingroup interface Everything around the json-rpc interface */ /*! \defgroup jsonrpc JSON-RPC \ingroup interface Everything around the json-rpc interface */ /*! \defgroup listproviders Listproviders Everything around the listproviders */ /*! \defgroup music Music info Elements used in my music */ /*! \defgroup settings Settings Everything around the settings */ /*! \defgroup windows Windows Kodi windows */