doxygen: add examples from examples dir and include one section on Readme.md
authorBrendan Le Foll <brendan.le.foll@intel.com>
Fri, 23 May 2014 13:47:23 +0000 (14:47 +0100)
committerBrendan Le Foll <brendan.le.foll@intel.com>
Fri, 23 May 2014 13:47:34 +0000 (14:47 +0100)
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
Doxyfile.in
README.md
examples/gpio_read6.c

index f2f83c8..a4c441e 100644 (file)
@@ -862,14 +862,15 @@ EXCLUDE_SYMBOLS        =
 # that contain example code fragments that are included (see the \include
 # command).
 
-EXAMPLE_PATH           = 
+EXAMPLE_PATH           = @CMAKE_CURRENT_SOURCE_DIR@/examples/ \
+                         @CMAKE_CURRENT_SOURCE_DIR@/examples/c++/
 
 # If the value of the EXAMPLE_PATH tag contains directories, you can use the
 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
 # *.h) to filter out the source-files in the directories. If left blank all
 # files are included.
 
-EXAMPLE_PATTERNS       = *
+EXAMPLE_PATTERNS       = *.cpp *.c
 
 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
 # searched for input files to be used with the \include or \dontinclude commands
index fd9fbf5..10c76c8 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,45 +1,51 @@
 MAA - Low Level Skeleton Library for Communication on Intel platforms
 ==============
 
-Library in C/C++ to interface with Galileo & other Intel platforms over:
-
-- I2C
-- SPI
-- GPIO
-- PWM
-- AIO
-
-In a structured and sane API with port nanmes/numbering that match boards &
-with bindings to javascript & python.
+Library in C/C++ to interface with Galileo & other Intel platforms, in a
+structured and sane API with port nanmes/numbering that match boards & with
+bindings to javascript & python.
 
 The intent is to make it easier for developers and sensor manufacturers to map
 their sensors & actuators on top of supported hardware and to allow control of
 low level communication protocol by high level languages & constructs.
 
+## API
+
+These interfaces allow you to interact with all libmaa functionality. The C++
+classes directly wrap the C API and provide a near 1:1 mapping of
+functionality.
+
+<center>
+C API Modules        | C++ API Classes
+:-------------------:|:-------------------:
+ @ref gpio.h "gpio"  | @ref maa::Gpio "Gpio class"
+ @ref i2c.h "i2c"    | @ref maa::I2c "I2c class"
+ @ref aio.h "aio"    | @ref maa::Aio "Aio class"
+ @ref pwm.h "pwm"    | @ref maa::Pwm "Pwm class"
+ @ref spi.h "spi"    | @ref maa::Spi "Spi class"
+ @ref maa.h "maa"    | @ref maa.h "maa"
+</center>
+
+@snippet gpio_read6.c Interesting
+
+## Supported platforms
+
+- Galileo (Fab D)
+
 ### ENV RECOMENDATIONS
 
 All of these are 'optional', however they are recommended. Only a C compiler,
-cmake and default system libraries are technically required to compile.
+cmake, libm and pthreads are technically required to compile.
 
-1. node.js 0.10.26
-2. python 3.3.x or 2.7.x
-3. swig 3.0.1 (swig 2.x will work but you will not be able to build node.js
-module so comment out add_directories(javacsript) in src/CmakeLists.txt)
-4. doxygen (needed to generate even python doc)
-5. sphinx
-6. pygments
-7. pydoc
+- Swig 3.0.1+ built with node.js & python support (0.10.x)
+- doxygen
+- sphinx (requires doxygen)
+- pygments
 
 ## COMPILING
 
-NOTE: The **only** supported cmake build configuration is to have the build/ dir
-inside of the repo/tarball.
-
-*if swig-v8 is not in your default path you can try run cmake with
-"-DCMAKE_PREFIX_PATH="/path/to/swig-v8"*
-
 mkdir build/
-cmake ..
+cmake -i ..
 make
 
 ## DEVELOPMENT
@@ -48,16 +54,6 @@ Please fork the code on github and then send pull requests. Please avoid merges
 in your forks. I will also accept patches sent in git style with signoffs to
 brendan.le.foll@intel.com
 
-## USING
-
-see examples/
-
-*for node.js make sure that maajs.node is in the current dir and set export
-NODE_PATH=.*
-
-Simple python html documentation can be generated with **make pydoc**, this
-does not require the full doxygen/sphinx setup.
-
 ## API Changelog
 
 When the API breaks in a small way there will be a changelog listed here
index 9f6abbf..baca2e3 100644 (file)
@@ -34,6 +34,7 @@ main(int argc, char **argv)
     fprintf(stdout, "MAA Version: %s\nStarting Read on IO6\n",
             maa_get_version());
 
+//! [Interesting]
     maa_gpio_context gpio;
 
     gpio = maa_gpio_init(6);
@@ -46,6 +47,7 @@ main(int argc, char **argv)
     }
 
     maa_gpio_close(gpio);
+//! [Interesting]
 
     return 0;
 }