-
-Style guide
-This guide aims to keep our team’s code style consistent, so please follow it as much as possible. Access casing for variables and methods is especially important since a lot of code references code that someone else wrote.
-
-Naming
-
-Java
-
-Public variables: PascalCase
-Public/private top level constant variables: MACRO_CASE
-Private top level members: m_camelCase
-Private local (including constant) variables: camelCase
-Enums: PascalCase
-Methods: camelCase
-Classes: PascalCase
-Class files: PascalCase.java
-Method files: camelCase.java
-Test files: PascalCaseTest.java
-Subsystem classes and files: PascalCaseSubsystem.java
-Abstract subsystem classes and files: PascalCaseSubsystem.java
-Command classes and files: PascalCaseCommand.java
-
-
-
-C++
-
-Public variables: PascalCase
-Public/private top level constant variables: MACRO_CASE
-Private top level members: m_camelCase
-Private local (including constant) variables: camelCase
-Enums: PascalCase
-Methods: camelCase
-Classes: PascalCase
-Class files: PascalCase.cpp
or PascalCase.hpp
-Method files: camelCase.cpp
-Test files: test_camelCase.cpp
-CMake modules: PascalCase.cmake
-
-
-
-
-Structure
-The following outlines the file structure in a WPILib projecct.
-
-subsystems
folder
-
-
-commands
folder
-
-
-Auto folder for full auto routines (not PathPlanner)
-utils
folder for reused code
-Follow PathPlanner documentation for PathPlanner structure
-
-
-
-