shithub: aubio

Download patch

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
 ``````````````````