[WASAPI] fix stream types and frequencies enumeration
[xbmc.git] / docs / doxygen / pages / mainpage.dox
blob18ba7e950cafd514dbddb66f294bb6513e02205c
1 /*! \file   mainpage.dox
2     \brief  Introduction page
4   \mainpage Introduction
5             Welcome to the documentation of Kodi. This starting page is meant to help people find their
6             way around the code.
8             This documentation is a work in progress - only some of the code has thus far been documented
9             and we welcome any and all input to documenting it further. Documentation serves both to help
10             newcomers get to grips with the source quickly, and to highlight possible deficiencies in the
11             code or interfaces. Due to the projects history you may find XBMC mentioned in the docs, this was
12             the previous name of the project.
14             Any help/suggestions are more than welcome.
16   \section  doxy_whatisxbmc What is Kodi?
17             Kodi is a free, open source (GPL) multimedia player that runs on Linux, Mac OS X (10.4 and later),
18             Windows, IOS and Android.  See http://kodi.tv for more details.
21 // Groups definition
23 /*!
24         \defgroup jobs Asynchronous jobs
25         Threaded job execution
28 /*!
29         \defgroup guilib Guilib classes
30         Guilib classes
33 /*!
34         \defgroup graphics Graphics and Screen
35         \ingroup guilib
37         Everything around graphics and Screen
40 ^/*!
41         \defgroup thumbs Thumbs
42         \ingroup graphics
43         Everything around the thumbs
46 /*!
47         \defgroup textures Textures and Fonts
48         \ingroup graphics
50         Everything about textures and fonts
53 /*!
54         \defgroup items Items
55         \ingroup guilib
56         Everything around items
59 /*!
60         \defgroup labels Labels
61         \ingroup guilib
62         Everything around labels
65 /*!
66         \defgroup lists Lists
67         \ingroup guilib
68         Everything around lists
71 /*!
72         \defgroup strings Strings and Localization
73         \ingroup guilib
75         Everything around Strings and localization
78 /*!
79         \defgroup tinyxml XML Parser
80         \ingroup strings
81         Tiny XML - XML Parser
84 /*!
85         \defgroup winref Window Reference
86         \ingroup guilib
87         The window reference
90 /*!
91         \defgroup winmsg Windows and Messages
92         \ingroup winref
93         Windows and messages
96 /*!
97         \defgroup controls Controls
98         \ingroup winref
99         Control classes
103         \defgroup winman Window Manager and Callbacks
104         \ingroup winref
106         Everything about window manager and callbacks
110         \defgroup actionkeys Actions and Keys
111         \ingroup winref
113         Everything around action mapping and key processing
118         \defgroup database Database
120         Everything around the database
124         \defgroup filesystem Filesystem
125         Everything around the filesystem
129         \defgroup input Input
130         Everything around input
133 /*! \defgroup keyboard Keyboard
134     \ingroup input
136     Keyboard input is processed by \ref CInputManager and forwarded to
137     registered keyboard handlers (e.g. game clients) or as actions to the UI:
139     - If no keyboard handlers are registered or if they don't consume events,
140       the keyboard events are forwarded to the UI via \ref CInputManager::OnKey.
141     - Clients (e.g. game clients implementing \ref KEYBOARD::IKeyboardHandler) call
142       \ref CInputManager::RegisterKeyboardHandler to register themselves as eligible
143       for keyboard input events.
144     - Keyboards can emulate Joysticks as described in KEYBOARD::CJoystickEmulation.
148         \defgroup mouse Mouse
149         \ingroup input
150         Everything around mouse
152         Mouse input is processed by \ref CInputManager and forwarded to
153         registered mouse handlers (e.g. game clients) or as actions to the UI:
155         - If no mouse handlers are registered or if they don't consume events,
156           the mouse input events are forwarded to the UI via \ref CInputManager::ProcessMouse.
157         - Clients (e.g. game clients implementing \ref MOUSE::IMouseInputHandler) call
158           \ref CInputManager::RegisterMouseHandler to register themselves as eligible
159           for mouse input events.
160         - Mouse events (from \ref CInputManager::OnEvent) are collected via implementations of
161           \ref MOUSE::IMouseDriverHandler and transformed into higher level features by
162           \ref MOUSE::IMouseButtonMap instances before they are sent to the handlers.
166         \defgroup joystick Joystick
167         \ingroup input
168         Everything around joystick
172         \defgroup touch Touch
173         \ingroup input
174         Everything around touch detection
178         \defgroup touch_generic Touch
179         \ingroup touch
180         Everything around generic touch detection
184         \defgroup games
185         Everything about RetroPlayer.
189         \defgroup interface Interfaces
190         Everything around interfaces
194         \defgroup info Info
195         \ingroup interface
196         Everything around the info interface
200         \defgroup jsonrpc JSON-RPC
201         \ingroup interface
202         Everything around the json-rpc interface
206         \defgroup jsonrpc JSON-RPC
207         \ingroup interface
208         Everything around the json-rpc interface
212         \defgroup listproviders Listproviders
213         Everything around the listproviders
217         \defgroup music Music info
218         Elements used in my music
222         \defgroup settings Settings
223         Everything around the settings
227         \defgroup windows Windows
228         Kodi windows