#pragma once #include #include #include #include "Afterglow.h" #include "Frequency_Trace.h" #include "Hover_Tooltip.h" #include "Interpolation.h" #include "Selection_Rectangle_Overlay.h" #include "Constellation_Diagram.h" #include "Performance_Overlay.h" #include "Spectrum.h" #include "Sweep_Spectrum.h" #include "Waterfall.h" namespace renderive { class Plot_Core; LIB_DECL std::shared_ptr attach_performance_overlay(Plot_Core& plot); LIB_DECL std::shared_ptr attach_performance_overlay(Plot_Core& plot, const Performance_Overlay_Options& options); LIB_DECL std::shared_ptr performance_overlay(Plot_Core& plot); LIB_DECL void set_performance_plot_name(Plot_Core& plot, std::string name); LIB_DECL void detach_performance_overlay(Plot_Core& plot); LIB_DECL bool performance_overlay_enabled(const Plot_Core& plot); LIB_DECL void set_performance_overlay_enabled(Plot_Core& plot, bool enabled); LIB_DECL std::shared_ptr performance_overlay_snapshot(const Plot_Core& plot); LIB_DECL void set_performance_overlay_update_callback(Plot_Core& plot, std::function callback); LIB_DECL void set_performance_overlay_clipboard_callback(Plot_Core& plot, std::function callback); LIB_DECL void notify_performance_overlay_viewport_changed(Plot_Core& plot); LIB_DECL bool performance_overlay_handle_wheel(Plot_Core& plot, PointF position, double angle_delta_y, double pixel_delta_y); LIB_DECL bool performance_overlay_handle_pointer_press(Plot_Core& plot, PointF position); LIB_DECL bool performance_overlay_handle_pointer_move(Plot_Core& plot, PointF position); LIB_DECL bool performance_overlay_handle_pointer_release(Plot_Core& plot, PointF position); LIB_DECL bool performance_overlay_handle_pointer_leave(Plot_Core& plot); } // namespace renderive