Here are the developer notes for this project.
You need Qt 5 to build this project, including QtQuick.
Open the .pro file in Qt Creator. Build it.
Another option is to do:
mkdir build
cd build
qmake ..
make
To create the macOS app bundle, run this script:
./scripts/sh_mac_deploy_qt.sh
You might need to manually edit these scripts in order to configure the version number of Qt you have installed.
We follow the Qt style guide for C++ and QML.
We also recommend using the Prettier extension for VS Code to quickly and automatically format large C++ files simply by pressing Shift+Alt+F inside a document (only works on C++ files; QML is not supported). This extension, however, will enforce its own C++ formatting style out-of-the-box, which diverges from our aforementioned preferred scheme, so here are the steps to correct it:
- Go to
File
>Preferences
>Settings
- In the search bar, input
C_Cpp.clang_format_fallbackStyle
- In the appropriate setting field, replace
Visual Studio
with{ BasedOnStyle: Google, IndentWidth: 4, ColumnLimit: 0 }
- Close and reopen VS Code
Each time we do a release/tag, we update the version number. It's located in autonomx/main.qml. We follow Semantic Versioning 2.0.0 - See https://semver.org/
Comprehensive documentation about the software architecture can be found here.
Comprehensive documentation about the steps necessary for implementing a new custom generator can be found here.
Comprehensive documentation related to the OSC Messaging System can be found here.
For full class documentation, we use Doxygen with GraphViz
-
Download and install Doxygen
- Download and install GraphViz - required to generate UML diagrams
- **parameters might need to be modified to specify what needs to be included (!)
-
Once Doxygen and GraphViz are installed, open Doxygen and open autonomx-doxyfile
- On the left side menu you should see a list of topics. We will go through them in order.
-
Project
- Specify working directory (where Doxygen will run)
- Select the directory to scan (AutonomX source folder)
- Select destination directory (where the folder of documents will be saved)
- Click next
-
Mode
- This page should already be correct
- “Include cross-referenced source code”
- Unsure if necessary or not
- Click next
-
Output
- This page should already be correct
- Here you can choose to output different formats; we default to only HTML
- Click next
-
Diagrams
- Unsure what is necessary or not but currently set to generating all options
- Click next
-
Run Page
- Before running, click on “Expert” tab
- Scroll to bottom of left menu and click on “Dot” in Topics
- Scroll down in right menu / params until you see “DOT_PATH”
- In DOT_PATH type: /usr/local/bin
- This may depend on where your system installed GraphViz
- Click on Run tab
- Click “Run doxygen”
- This should run and generate a folder with all the documentation
-
Outside Doxygen, navigate to the ouput folder, click any html file inside, and it should open the entire documentation in your default browser. Left hand side should have a navigation menu.
- You did it! :)
On Ubuntu, you can install Doxygen like this:
sudo apt install doxygen graphviz
Then, you can build the documentation and open the resulting HTML files:
doxygen
cd html/
xdg-start index.html