Is it a solution suggestion to a problem?
The current version of the code requires
Describe the feature you would like to be implemented
Package Folder Structure:
My suggestion for folder structure follows best practices from:
1- http://wiki.ros.org/DevelopersGuide.
2- http://wiki.ros.org/Packages.
“include” folder: contains header files for all the nodes of the package
“launch” folder: contains xml files of types .launch that is used in roslaunch commands to run node or multiple nodes.
“test” folder: contains xml files of type .test or .launch to launch unit test of one or multiple nodes, also contains files for unit testing the package and its nodes.
“src” folder: contains .cpp, or/and .c codes for nodes of the package.
“Scripts” folder: contains .py codes for nodes of the package.
“msg” folder: contains the custom messages that are defined in the package.
“srv” folder: contains the custom services that are defined in the package.
“README.md” file: contains overview of package, how to build it, how to run it, nodes inside the package, and other information regarding the package.
“CMakeLists.txt” file: contains the package cmake instructions using for catkin to build package
“package.xml” file: contains properties about the package such as the package name, version number, authors, maintainers, and dependencies on other catkin packages.
Which module? Full Software Stack
Is it a solution suggestion to a problem? The current version of the code requires
Describe the feature you would like to be implemented Package Folder Structure: My suggestion for folder structure follows best practices from: 1- http://wiki.ros.org/DevelopersGuide. 2- http://wiki.ros.org/Packages. “include” folder: contains header files for all the nodes of the package “launch” folder: contains xml files of types .launch that is used in roslaunch commands to run node or multiple nodes. “test” folder: contains xml files of type .test or .launch to launch unit test of one or multiple nodes, also contains files for unit testing the package and its nodes. “src” folder: contains .cpp, or/and .c codes for nodes of the package. “Scripts” folder: contains .py codes for nodes of the package. “msg” folder: contains the custom messages that are defined in the package. “srv” folder: contains the custom services that are defined in the package. “README.md” file: contains overview of package, how to build it, how to run it, nodes inside the package, and other information regarding the package. “CMakeLists.txt” file: contains the package cmake instructions using for catkin to build package “package.xml” file: contains properties about the package such as the package name, version number, authors, maintainers, and dependencies on other catkin packages.
Coding standard of the packages: I recommend following best practices and coding guidelines from: 1- http://wiki.ros.org/CppStyleGuide 2- http://wiki.ros.org/PyStyleGuide 3- http://wiki.ros.org/ROS/Patterns/Conventions 4- http://wiki.ros.org/CommonProcedures I recommend designning the whole software stack to be consisting of namespaces, structs, classes with proper OOP design for high accuracy and efficiency, low power and memory consumption.