rsvs3D
0.0.0
Codes for the c++ implementation of the 3D RSVS
|
The SRCC
folder contains the C++ source files used to build the executable for the 3D-RSVS software.
The files and folders inside the SRCC/
folder are:
incl
: Contains the "includes" of the program, this encompasses header files (hpp
) and template implementations (cpp
files that need to be included).src
: Contains the implementation of the software.modules
: Contains git sub-modules used for managing build time dependencies of the software.makefile
: The main makefile defining compilation recipes, important ones are:all
: Build the complete executable with main, and test suite.distribution
: Builds the executable without any test code and with optimisation level of 3.The main makefile calls on either the default linux or the default windows configuration depending on the OS:
makelinux.mk
: Default configuration for building the program in linux (tested on Ubuntu 20.04).makewin.mk
: Default configuration for the building the program on windows (tested on windows 10).docs
: Doxygen configuration file for building the API docs for the program. See the docs/README for instructions on compiling the documentation. The compiled documentation can be found at: payoto.github.io/rsvs3d.config
: Template input files for the RSVS process, each of the JSON files can be called by doing ``bin
: The compiled binaries go there..d
: Dependency management artifact to ensure make rebuilds objects when headers change.obj
: Directory for the compiled objects (one per .cpp
file in src
).In order to build the fully featured executable run:
This will generate the RSVS3D
executable. When developing a specific part of the program it can be desirable to build a smaller executable which only compiles parts of the program being tested. The testnew
and testall
recipes in the makefile fill that role:
will create the test_RSVS3D
executable with debug flags.
When the RSVS3D
executable has been built the --help
flag can be used to return the command line flags.
Tests are handled by a custom testing framework developed for this project:
incl/test.hpp
;src/test/test.cpp
;cpp
files they correspond to and all start with Test_
.The test suite can be executed by building the program with make all
and then calling ./RSVS3D --test
which runs a subset of the tests. Running ./RSVS3D --test=all
will run all the tests, which is very slow, and fails (at the moment).