Files
plotter/include/plot/plot.hpp
T

59 lines
1.9 KiB
C++

#pragma once
/// Umbrella header: pulls in every public component of the plot library, in
/// layer order (`core/math -> gl -> data -> render -> plot -> input`), so a
/// translation unit can include this one header and use the whole surface.
///
/// It deliberately stops at the library: the adapters under `adapters/` are
/// separate targets -- each one drags in GLFW, Dear ImGui, Qt6 or GTK4 -- and
/// pulling any of them in here would destroy the core's zero-dependency
/// property, which is the point of `plot_core`.
///
/// The macro-gated instrumentation under `*/detail/` is not here either: those
/// headers exist for the test suite's counters, define nothing without their
/// PLOT_*_COUNT/PLOT_RING_STATS macro, and are documented as not part of the
/// public surface.
#include <plot/core/color.hpp>
#include <plot/core/rect.hpp>
#include <plot/core/span.hpp>
#include <plot/core/status.hpp>
#include <plot/core/types.hpp>
#include <plot/math/mat3.hpp>
#include <plot/math/transform.hpp>
#include <plot/math/vec2.hpp>
#include <plot/gl/api.hpp>
#include <plot/gl/caps.hpp>
#include <plot/gl/handle.hpp>
#include <plot/gl/loader.hpp>
#include <plot/data/array_series.hpp>
#include <plot/data/minmax_pyramid.hpp>
#include <plot/data/ring_buffer.hpp>
#include <plot/data/series.hpp>
#include <plot/data/stream_series.hpp>
#include <plot/render/bitmap_font.hpp>
#include <plot/render/buffer.hpp>
#include <plot/render/primitives.hpp>
#include <plot/render/program.hpp>
#include <plot/render/renderer.hpp>
#include <plot/render/shaders.hpp>
#include <plot/render/style.hpp>
#include <plot/render/text.hpp>
#include <plot/render/vertex_array.hpp>
#include <plot/plot/annotation.hpp>
#include <plot/plot/axis.hpp>
#include <plot/plot/cursor.hpp>
#include <plot/plot/grid.hpp>
#include <plot/plot/measure.hpp>
#include <plot/plot/plot.hpp>
#include <plot/plot/ticks.hpp>
#include <plot/plot/trace.hpp>
#include <plot/input/controller.hpp>
#include <plot/input/events.hpp>