ref: 5399f174a309d47320b07089de6ddbd3cbf8c288
parent: 70ab9fef8083bf63535e2a010ae6de356f52c7cd
author: Paul Brossier <piem@piem.org>
date: Fri Mar 24 14:28:35 EDT 2017
README.md: move api description to doc/develop.rst
--- a/README.md
+++ b/README.md
@@ -56,23 +56,6 @@
- `aubiocut` slices sound files at onset or beat timestamps
-Implementation and Design Basics
---------------------------------
-
-The library is written in C and is optimised for speed and portability.
-
-The C API is designed in the following way:
-
- aubio_something_t * new_aubio_something (void * args);
- audio_something_do (aubio_something_t * t, void * args);
- smpl_t aubio_something_get_a_parameter (aubio_something_t *t);
- uint_t aubio_something_set_a_parameter (aubio_something_t *t, smpl_t a_parameter);
- void del_aubio_something (aubio_something_t * t);
-
-For performance and real-time operation, no memory allocation or freeing take
-place in the `_do` methods. Instead, memory allocation should always take place
-in the `new_` methods, whereas free operations are done in the `del_` methods.
-
The latest version of the documentation can be found at:
https://aubio.org/documentation
--- a/doc/develop.rst
+++ b/doc/develop.rst
@@ -16,6 +16,31 @@
Here is a brief overview of the C library. See also the `Doxygen
documentation`_ for a more detailed list of available functions.
+Design Basics
+`````````````
+
+The library is written in C and is optimised for speed and portability.
+
+The C API is designed in the following way:
+
+.. code-block:: C
+
+ // new_ to create an object foobar
+ aubio_foobar_t * new_aubio_foobar(void * args);
+ // del_ to delete foobar
+ void del_aubio_something (aubio_something_t * t);
+ // _do to process output = foobar(input)
+ audio_something_do (aubio_something_t * t, fvec_t * input, cvec_t * output);
+ // _get_param to get foobar.param
+ smpl_t aubio_something_get_a_parameter (aubio_something_t * t);
+ // _set_param to set foobar.param
+ uint_t aubio_something_set_a_parameter (aubio_something_t * t, smpl_t a_parameter);
+
+For performance and real-time operation, no memory allocation or freeing take
+place in the `_do` methods. Instead, memory allocation should always take place
+in the `new_` methods, whereas free operations are done in the `del_` methods.
+
+
Vectors and matrix
``````````````````