Avid Insight Library

What is it?

The Avid Insight Library (“ail” for short) is a collection of C++ code written by me in my free time, for use in my own projects. At the moment it focuses on maths which might suit games/simulation, although in the future I intend to expand it.

Where to find it

The project is hosted on GitHub:

Licence

The library is released free and open source under the permissive MIT licence. You are welcome to use it and learn from it if it’s helpful. However, as it’s mainly for my own use (and as it’s still in early development) it’s likely to change a lot as time goes on.

Development principles

Some of my major aims in the project are:

  • Robustness
    • All basic functionality should be covered by unit tests and/or compile-time tests where possible.
    • Eventually, the tests should all be carried out by an automated build server.
  • Portability
    • The library should be compatible with standard C++, ideally working on any sensible compiler.
  • Platform independence
    • The code should work on any reasonable Operating System.
  • Modern code
    • The code should make use of up-to-date C++ conventions and standards where possible (i.e. C++11 onwards).
  • Documentation
    • All classes, functions, and members etc. should be documented using doc-comments.

Dependencies

The library itself has no external dependencies at the present time, and I intend it to stay that way as far as possible.

The doc-comments in the code are designed to be extracted and collated using Doxygen.

The unit tests are implemented using the excellent Catch framework.