/**
*
* @mainpage Emotion Library Documentation
+ *
+ * @image html e.png
+ *
+ * Emotion is a library that allows playing audio and video files, using one of
+ * its backends (gstreamer and xine).
+ *
+ * It is integrated into Ecore through its mainloop, and is transparent to the
+ * user of the library how the decoding of audio and video is happening. Once
+ * the objects are created, the user can set callbacks to the specific events
+ * and set options to this object, all in the main loop (no threads are needed).
+ *
+ * Emotion is also integrated with Evas. The emotion object returned by
+ * emotion_object_add() is an Evas smart object, so it can be manipulated with
+ * default Evas object functions. Callbacks can be added to the signals emitted
+ * by this object with evas_object_smart_callback_add().
+ *
* @version @PACKAGE_VERSION@
* @author Carsten Haitzler <raster@rasterman.com>
* @author vtorri (Vincent Torri) <torri@maths.univ-evry.fr>
*
* A media object library for Evas and Ecore.
*
- * @todo Complete documentation of API
+ * @section work How does Emotion work?
+ *
+ * The Emotion library uses Evas smart objects to allow you to manipulate the
+ * created object as any other Evas object, and to connect to its signals and
+ * process them when needed. It's also possible to swallow Emotion objects
+ * inside Edje themes, and expect it to behave as a normal image or rectangle
+ * when regarding to its dimensions.
+ *
+ * To instantiate an Emotion object, the simple code below is enough:
+ *
+ * @code
+ * em = emotion_object_add(e);
+ * emotion_object_init(em, NULL);
+ *
+ * emotion_object_file_set(em, file_path);
+ *
+ * evas_object_move(em, 0, 0);
+ * evas_object_resize(em, WIDTH, HEIGHT);
+ * evas_object_show(em);
+ *
+ * emotion_object_play_set(em, EINA_TRUE);
+ * @endcode
+ *
+ *
+ * @todo Complete documentation of API - in progress
*
*/