added ambd documentation
[profile/ivi/automotive-message-broker.git] / docs / mainpage.in.idl
1 /*!
2 * \mainpage Automotive Message Broker Documentation
3 * \version @PROJECT_VERSION@
4 * \section links AMB Documentation Sections
5 * - ambd.md AMB Daemon Documentation
6 * - <a href="../dbus/html/index.html">DBus API documentation</a> - Using AMB with your application
7 * - <a href="../amb/html/index.html">libamb internal API documentation</a> - Developing AMB or AMB plugins
8 * - <a href="../plugins/bluemonkey/html/index.html">Bluemonkey Javascript API documentation</a>
9 * - <a href="../plugins/websocket/html/index.html">AMB Websocket protocol documentation</a>
10 * \section intro Introduction
11 * Automotive Message Broker (AMB) is a framework for providing applications with standardized access to vehicle data.
12 * It uses a plugin architecture to allow customization for different vehicles and devices.  Here is a diagram of how
13 * AMB is architected:
14 * \image html AMBArchitecture.png
15 * AMB works by passing "Properties" from "source" plugins to interested "sink" plugins.  These properties represent
16 * vehicle data, ie 'VehicleSpeed' represents the vehicle's ground velocity.
17 *
18 * In General, AMB "source" plugins produce data and AMB "sink" plugins consume them.  However, it is possible that a
19 * source can also consumes data.  AMB supports multiple simultaneous source and sink plugins.  This allows for aggregation
20 * from multiple vehicle networks, the cloud, or even from other instances of AMB running elsewhere (via the websocket
21 * plugins).
22 *
23 * More information about AMB plugins can be found in the <a href="../amb/html/index.html">library documentation</a>.
24 * \section plugins AMB Plugins
25 * AMB plugins each have their own usage documentation including any special Properties they define.  Below is a description
26 * of several AMB plugins and their documenation:
27 * - <a href="../plugins/bluemonkey.README">Bluemonkey</a> - Extensible javascript engine plugin for defining plugin behavior in javascript
28 * - <a href="../plugins/database.README">Database</a> - Plugin that logs data in a sqlite database and can play back logs
29 * - <a href="../plugins/dbus.README">DBus</a> - Exposes AMB Properties on DBus
30 * - <a href="../plugins/gpsnmea.README">GPSNmea</a> - GPS Plugin that provides location position data from NMEA compatible devices
31 * - <a href="../plugins/obd2.README">OBD-II</a> - Plugin that provides data from OBD-II compatible vehicles
32 * - <a href="../plugins/opencvlux.README">OpenCVLux</a> - Plugin that uses OpenCV to produce ADAS data and perform video logging
33 * - <a href="../plugins/websocket.README">Websocket</a> - Both source and sink plugin that uses a websocket protocol to communicate
34 * - <a href="../plugins/wheel.README">Wheel</a> - Plugin that generates data using the Logitech G27 racing wheel
35 * \section crosswalk Crosswalk Vehicle Extension
36 * AMB also comes with a <a href="http://crosswalk-project.org">crosswalk</a> extension that implements the W3C Automotive Business group
37 * <a href="https://rawgit.com/w3c/automotive-bg/master/vehicle_spec.html">vehicle</a> and <a href="https://rawgit.com/w3c/automotive-bg/master/data_spec.html">data</a> specifications.
38 * \section licensing Licensing
39 * AMB is licensed LGPL v2.  This allows the creation of proprietary plugins.
40 * \section previous_versions Previous Versions
41 * - <a href="../../0.13/index.html">0.13</a>
42 * - <a href="../../0.12/docs/amb/html/index.html">0.12 library Documentation</a>
43 * - <a href="../../0.12/docs/dbus/html/index.html">0.12 DBus API Documentation</a>
44 */