The Sparta Modeling Framework
|
This is intended for anyone contributing to Sparta
Sparta's coding style follows the general coding style guidelines for C++ development as documented by Google: https://google.github.io/styleguide/cppguide.html. However, the following exceptions/additions to the rules:
MyClass
myMethodCall
my_variable_name
myPrivateOrProtectedMethod_
and my_private_or_protected_variable_
All sparta components and multi-component assemblies should have tests in subdirectories of the tests directory at the root of the repository. These tests should follow the style and conventions of existing test and be added to the CMakeLists in the test directory. No coding additions/fixes will be accepted without a test. All tests must pass before a PR is accepted.
/*! */
The doxygen pages automatically generated from namespace and classes related to each Sparta component should contain detailed explanations of how to use that component's features. However, some concepts involve multiple components which requires standalone documentation pages to be written. These are mainly use-case-based (e.g. Textual Message Logging How to Log). These manually-written doxygen pages can be found in source code and text files within sparta and should be left-aligned at column 0 and should contain no lines that extend past character column 100 except for preformatted content such as example code.
All Sparta features should be consistently documented. Whenever possible, hand-written documentation should reference to Sparta C++ documentation using doxygen \ref