Base API | Basic types, configuration, and assertion support |
Base API Assertions | Assertions and static assertions |
Configuration of the Base API | Configuration macros for platform, compiler, etc |
Memory Management | The memory management provides an interface for allocators including a default implementation |
Interface Framework Technology | The classes provided here support conventional modern C++ library design principles for component software to achieve binary compatibility across shared library boundaries and future extensibility |
Logging | Logger interface and severity levels |
Multithreading Support | Primitives useful for multithreaded applications, for example, atomic counters, condition variables, and locks |
Plugin Support | Support for dynamically loaded plugins |
Basic Types | Platform-independent types |
Specializations for numeric_traits | The number traits class is specialized for number types defined in this API, such as mi::Uint32 and mi::Float64 |
Versioning of the Base API | The Base API has a major and minor version number and an optional qualifier |