Skip to content

MVE Developers Guide

Simon Fuhrmann edited this page Jul 19, 2015 · 4 revisions

Wiki HomeMVE Developers Guide

API Level Documentation

MVE uses Doxygen as API level documentation tool. In order to build the docs, you need to have Doxygen installed on your system. To generate the API documentation, use the following commands (note the subtle but important distinction between doc and docs).

# cd mve
# make doc
# webbrowser docs/doxygen.html

Programming with MVE

To write your own code based on MVE, there is not much you have to do. Set your include path and link to the libraries to create your binary. You can also copy one of our Makefiles to get started. This will compile all .cc files and create a binary with the name of the containing directory.

Here are a few examples how to use the libraries:

Contributing to MVE

MVE has a strict style policy, please look at How to Contribute for information.

API Changes

API changes affect code that depends on MVE. We try to keep these changes as easy as possible for users of the API, but sometimes it's better to abandon old code for the sake of a better design. The Support and Updates page lists those API changes and sometimes we provide tools for automated code updates.

Testing with GoogleTest

MVE uses Google's testing framework for unit tests. The test cases are located in the mve/tests/ directory and can be built and executed with make test.

Compile and prepare GoogleTest in the following way:

  • Download a copy of Google's testing framework.
  • Export the environment variable GTEST_PATH and point to the gtest directory.
  • cd $GTEST_PATH/make and run make. This compiles the test framework which is used for linking.

Some functionality is hard to test with unit tests. Some test files (with a main() function) still exist in the library directories and are prefixed with _test_*. They can be built with make _test_NAME. However, these kind of tests are deprecated and should be converted to test cases!