Skip to content

Latest commit

 

History

History
53 lines (39 loc) · 1.11 KB

Libraries.rst

File metadata and controls

53 lines (39 loc) · 1.11 KB

Libraries

This page describes the preferred libraries used with the Mantid code base.

  • Use libraries from std where possible.
  • Boost header-only libraries are also always available. The following compiled Boost libraries are available:
    • regex
    • date_time
    • python
    • serialization
    • others required must be discussed with the TSC
  • Eigen is used for fast linear algebra calculations
  • Poco is also used for:
    • asynchronous method support
    • application configuration
    • logging
    • path handling (will eventually be replaced by std::filesystem)
    • networking
    • XML parsing

Prefer boost::regex over std::regex (bugs in std::regex until gcc 5 and some platforms still use gcc 4.8)

  • Prefer Boost algorithms if possible
  • Some string utilities also exist in MantidKernel/Strings.h