#include "pbd/xml++.h" #include "canvas/types.h" extern double double_random (); extern ArdourCanvas::Rect rect_random (double); namespace ArdourCanvas { class ImageCanvas; } class Benchmark { public: Benchmark (std::string const &); virtual ~Benchmark () {} void set_iterations (int); double run (); virtual void do_run (ArdourCanvas::ImageCanvas &) = 0; virtual void finish (ArdourCanvas::ImageCanvas &) {} private: ArdourCanvas::ImageCanvas* _canvas; int _iterations; };