diff mbox

[API-NEXT,RFC,3/3] doc: updates following new structure

Message ID 1453831498-46414-4-git-send-email-christophe.milard@linaro.org
State New
Headers show

Commit Message

Christophe Milard Jan. 26, 2016, 6:04 p.m. UTC
Signed-off-by: Christophe Milard <christophe.milard@linaro.org>
---
 doc/implementers-guide/implementers-guide.adoc | 74 +++++++++++++++-----------
 doc/users-guide/users-guide.adoc               | 15 +++---
 2 files changed, 53 insertions(+), 36 deletions(-)
diff mbox

Patch

diff --git a/doc/implementers-guide/implementers-guide.adoc b/doc/implementers-guide/implementers-guide.adoc
index 574317a..2e0944a 100644
--- a/doc/implementers-guide/implementers-guide.adoc
+++ b/doc/implementers-guide/implementers-guide.adoc
@@ -18,44 +18,58 @@  The implementers view of the include source tree allows the common API
 definitions and documentation to be reused by all the platforms defined in the
 tree, but leave the actual definitions to be defined by the specific platform.
 
-.Implementers include structure
+.Implementers include structure (in repository)
 ----
 ./
 ├── include/
-│   ├── odp/
-│   │   └── api/ <1>
-│   │       └── The Public API and the documentation.
-│   │
-│   └── odp.h <4>  This file should be the only file included by the application.
+│   └── odp/
+│       ├── api/
+│       │   └── ref/
+│       │       └── The Public API reference and its documentation. <1>
+│       │
+│       └── api.h  This file should be the only file included by the any ODP
+│                  application. <4>-├── platform/
-│   ├── <implementation name>/
-│   │   ├── include/
-│   │   │   ├── odp/ <2>
-│   │   │   │   ├── In-line function definitions of the public API for this
-│   │   │   │   │   platform seen by the application.
-│   │   │   │   │
-│   │   │   │   └── plat/ <3>
-│   │   │   │       └── Platform specific types, enums etc as seen by the
-│   │   │   │           application but require overriding by the
-│   │   │   │           implementation.
-│   │   │   │  
-│   │   │   └── Internal header files seen only by the implementation.
+└── platform/
+    └── <implementation name>/
+        └── include/
+            ├── Internal header files seen only by the implementation.
+            └── odp/
+                └── api/ <2>
+                    ├── In-line function definitions of the public API for this
+                    │   platform seen by the application.
+                    │
+                    └── plat/ <3>
+                        └── Platform specific types, enums etc as seen by the
+                            application but require overriding by the
+                            implementation.
 ----
-
-<1> The doxygen description of the API definition is held in the public api file
-'include/odp/api'.
-<2> The public file is included by a counterpart in
-'platform/<implementation name>/include/odp'.
-The include of the public API is AFTER the platform specific definitions to
+<1> The reference, defining the ODP application programming interface (API)
+is held in 'include/odp/api/ref/'. The ODP API is defined by a set of '.h' files
+including doxygen documentation.
+<2> Each public reference file is included by a counterpart in
+'platform/<implementation name>/include/odp/api'.
+The include of the reference API is AFTER the platform specific definitions to
 allow the platform to provide definitions that match the underlying hardware.
-<3> The implementation code includes 'platform/<implementation name>/include/plat'
-and this then provides the source files with a complete definition the ODP API
-to be implemented.
-<4> Applications in turn include the include/odp.h file which includes the
-'platform/<implementation name>/include/plat' files to provide a complete
+<3> The implementation code may include files from
+'platform/<implementation name>/include/odp/api/plat'
+<4> Applications in turn include the include/odp/api.h file which includes the
+'platform/<implementation name>/include/odp/api' files to provide a complete
 definition of the API.
 
+After ODP installation (make install), the structure becomes as follows:
+
+.Installation structure
+----
+./
+└── include/
+    └── odp/
+        ├── api/      In-line for this platform.
+        │   ├── plat/ Platform specific types.
+        │   └── ref/  The public API reference.
+        └── api.h
+----
+
 == The validation Suite ==
 
 ODP provides a comprehensive set of API validation tests that are intended to be
diff --git a/doc/users-guide/users-guide.adoc b/doc/users-guide/users-guide.adoc
index b3c08a1..0592984 100644
--- a/doc/users-guide/users-guide.adoc
+++ b/doc/users-guide/users-guide.adoc
@@ -462,8 +462,8 @@  _synchronization_ mechanisms.
 ODP provides APIs to assist in each of these areas.
 
 === The include structure
-Applications only include the 'include/odp.h' file, which includes the
-'platform/<implementation name>/include/odp' files to provide a complete
+Applications only include the 'include/odp/api.h' file, which includes the
+'platform/<implementation name>/include/odp/api' files to provide a complete
 definition of the API on that platform. The doxygen documentation defining
 the behavior of the ODP API is all contained in the public API files, and the
 actual definitions for an implementation will be found in the per platform
@@ -476,10 +476,13 @@  visible to the application.
 ./
 ├── include/
 │   ├── odp/
-│   │   └── api/
-│   │       └── The Public API and the documentation.
-│   │
-│   └── odp.h   This file should be the only file included by the application.
+│   │   ├── api/
+│   │   │   └── ref/
+│   │   │       └── The Public API and the documentation.
+│   │   │
+│   │   │
+│   │   └── api.h   This file should be the only file included by the
+│   │               application.
 ----
 
 === Initialization