.. default-domain:: cpp .. highlight:: cpp .. namespace:: pugl ######## Overview ######## Pugl is a C library, but the bindings documented here provide a more idiomatic and type-safe API for C++. If you would rather use C, refer instead to the `C API documentation <../../c/singlehtml/index.html>`_. The C++ bindings are very lightweight and do not require virtual functions, RTTI, exceptions, or linking to the C++ standard library. They are provided by the package ``puglpp-0`` which must be used in addition to the desired platform+backend package above. The core API (excluding backend-specific components) is declared in ``pugl.hpp``: .. code-block:: cpp #include The API revolves around two main objects: the `world` and the `view`. An application creates a world to manage top-level state, then creates one or more views to display. .. toctree:: world view events event-loop