Open Search
    API Features

    Features

    The MAXON API was build to ensure easy software development, to allow the simple creation of extensions and to provide access to state-of-the-art technologies.

    Software Development

    The MAXON API provides several tools and concepts to make writing plugins as simple and safe as possible:

    • Easy to use API due to strict naming schemes and use of consistent concepts.
    • Easy creation of safe code using a strict and powerful error handling system, reference-counting and type safety tools. See Error Handling and References.
    • Powerful debugging tools as stack traces, type viewer, debugging output, display of any type as string are provided. See also Debug and Output Functions.
    • Automatic creation of project files for multiple platforms. See Project Tool.
    • Source processor to analyse the source code. See Source Processor.
    • Automatic dependency analysis makes manual registration in the correct order obsolete.

    Interfaces & Plugins

    The MAXON API is based on interfaces. See Interface Basics. It delivers:

    • Consistent and powerful interface concept, combining of interfaces at runtime.
    • Public interfaces are 100% the same as what MAXON programmers use.
    • Code can be moved around freely, no need for manual initialization/free functions.

    New plugins are registered using registries and IDs. See Registries. This approach guarantees:

    • Consistent registration concept.
    • Reverse domain name notation instead of IDs.

    Technologies

    The MAXON API uses multiple modern concepts and technologies:

    • Extremely fast and efficient algorithms, high performance in all areas.
    • Powerful set of standardized classes (maps, arrays, lists, iterators etc.)
    • Built-in reference-counting, see References.
    • Extremely powerful, yet simple to use threading system, see Threading.
    • Use of modern C++11 concepts, like lambdas. See C++ Techniques.
    • Powerful I/O system that allows you to write complex data (lists, maps, references) easily, implicit support for JSON/XML.
    • Unified I/O concept - no matter if the source is http, ftp, the content of a ZIP file etc. See MAXON API Files & Media.
    • 4-byte Unicode handling. See Strings & Texts.
    • Easy configuration of code via command line, text file or environment variables. See Configuration Variables.
    • Automatic data types, e.g. maxon::BaseArray automatically builds itself without any additional code from the programmer.
    • Observer concept. See Observables.
    • Powerful math/geometry libraries.
    • Powerful bitmap I/O, support for many new features.
    • Efficient intersection interface.

    Further Reading