doc/coding-convention: update the changes of recent years.
authorMyungJoo Ham <myungjoo.ham@samsung.com>
Wed, 6 Jul 2022 09:37:16 +0000 (18:37 +0900)
committerMyungJoo Ham <myungjoo.ham@samsung.com>
Thu, 7 Jul 2022 11:29:50 +0000 (20:29 +0900)
Coding convention for C++ has become more concrete and the components of nnstreamer and its neighbor have been updated.

Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Documentation/coding-convention.md

index 5010487..ce61fb1 100644 (file)
@@ -4,7 +4,7 @@ title: Coding Convention
 
 # Coding Convention
 
-In general, NNStreamer Application follows [The Coding Style of GStreamer](https://gstreamer.freedesktop.org/documentation/frequently-asked-questions/developing.html#what-is-the-coding-style-for-gstreamer-code) for coding convention.
+In general, NNStreamer follows [The Coding Style of GStreamer](https://gstreamer.freedesktop.org/documentation/frequently-asked-questions/developing.html#what-is-the-coding-style-for-gstreamer-code) for coding convention.
 
 ## C codes (.c sources)
 
@@ -29,8 +29,7 @@ Except the two, you are required to follow the general coding styles mandated by
 
 Do not use .cpp extensions, use .cc extensions for C++ sources. Use .h for headers.
 
-We do not have strict rules on C++ sources, yet, because all the cores are written in C.
-However, please try to stick with the same indentation rules (2 spaces) and common senses.
+Please try to stick with the same indentation rules (2 spaces) and refer to .clang-format, which mandates the coding styles via CI.
 
 ## Other files
 
@@ -43,10 +42,6 @@ However, please try to stick with the same indentation rules (2 spaces) and comm
 
 ## Directory structure of nnstreamer.git
 
-- **api**: API definitions and implementations
-    - **android**: Android APIs
-    - **capi**: C-APIs (Tizen and others)
-    - Note that .NET APIs are located at https://github.com/Samsung/TizenFX along with other Tizen .NET APIs
 - **debian**: Debian/Ubuntu packaging files
 - **Documentation**: Documentations
 - **ext/nnstreamer**: NNStreamer plugins and subplugins that depend on optional or non-standard external packages. Components in this directory can be built and included optionally.
@@ -58,20 +53,22 @@ However, please try to stick with the same indentation rules (2 spaces) and comm
 - **gst/nnstreamer**: All core nnstreamer codes are located here.
     - **tensor\_\* **: Plugins of nnstreamer.
 - **jni**: Android/Java build scripts.
-- **nnstreamer\_example**: Example custom filters required by test cases. In the old days, we used to have all nnstreamer examples here. Most of such examples are moved to [Example git](https://github.com/nnstreamer/nnstreamer-example) except for those who required by test cases.
 - **packaging**: Tizen RPM build scripts. OpenSUSE/Redhat Linux may reuse this.
 - **tests**: Unit test cases. We have SSAT test cases and GTEST test cases. There are a lot of subdirectories, which are groups of unit test cases.
 - **tools**: Various developmental tools and scripts of NNStreamer.
 
 ## Related git repositories
 
+- [NNTrainer, the on-device AI training framework](https://github.com/nnstreamer/nntrainer)
 - [NNStreamer Example Applications \& Documents](https://github.com/nnstreamer/nnstreamer-example)
 - [TAOS-CI, CI Service for On-Device AI Systems](https://github.com/nnstreamer/TAOS-CI)
+- [Machine Learning APIs](https://github.com/nnstreamer/api)
+- [NNStreamer-Edge, among-device AI support](https://github.com/nnstreamer/nnstreamer-edge)
+- [AITT, an AI service oriented wrapper for MQTT](https://github.com/nnstreamer/aitt)
 - [NNStreamer ROS (Robot OS) Support](https://github.com/nnstreamer/nnstreamer-ros)
 - [NNStreamer Android Build Resource](https://github.com/nnstreamer/nnstreamer-android-resource): additional files required by Android builds.
-- [ORC, aarch64 support](https://github.com/nnsuite/orc): we are going to support aarch64-ORC to accelerate transform operations of nnstreamer in aarch64 devices.
-- [NNStreamer-Edge](https://github.com/nnstreamer/nnstreamer-edge): WIP
 - [NNStreamer Yocto/OpenEmbedded Layer](https://github.com/nnstreamer/meta-neural-network): refer to [Openembedded layer page](https://layers.openembedded.org/layerindex/branch/master/layer/meta-neural-network/)
+- [NNStreamer Homebrew for MacOS](https://github.com/nnstreamer/homebrew-neural-network)
 - [NNStreamer Web Page](https://github.com/nnstreamer/nnstreamer.github.io): WIP
 - **tizenport-\* **: Tizen-ROS support. Refer to [build.tizen.org](https://build.tizen.org/project/show/devel:AIC:Tizen:5.0:nnsuite)