25#if defined(AST_WITH_MATPLOT) && defined(AST_WITH_QWT)
27A_SUPPRESS_WARNINGS_BEGIN
28#include <matplot/backend/backend_interface.h>
29A_SUPPRESS_WARNINGS_END
39class AST_CHART_API QwtBackend :
public matplot::backend::backend_interface {
42 virtual ~QwtBackend()
override;
44 bool consumes_gnuplot_commands()
override;
45 bool is_interactive()
override;
47 const std::string& output()
override;
48 const std::string& output_format()
override;
49 bool output(
const std::string& filename)
override;
50 bool output(
const std::string& filename,
51 const std::string& file_format)
override;
53 unsigned int width()
override;
54 unsigned int height()
override;
55 void width(
unsigned int new_width)
override;
56 void height(
unsigned int new_height)
override;
58 unsigned int position_x()
override;
59 unsigned int position_y()
override;
60 void position_x(
unsigned int new_position_x)
override;
61 void position_y(
unsigned int new_position_y)
override;
63 void window_title(
const std::string& title)
override;
64 std::string window_title()
override;
66 bool new_frame()
override;
67 bool render_data()
override;
68 void show(matplot::figure_type* f)
override;
69 bool should_close()
override;
70 bool supports_fonts()
override;
72 void draw(matplot::figure_type* f)
override;
75 std::unique_ptr<Impl> impl_;
84AST_CHART_API
void aUseQwtBackend();