diff options
Diffstat (limited to 'libs/canvas/benchmark/benchmark.h')
-rw-r--r-- | libs/canvas/benchmark/benchmark.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libs/canvas/benchmark/benchmark.h b/libs/canvas/benchmark/benchmark.h new file mode 100644 index 0000000000..df6fd0ea89 --- /dev/null +++ b/libs/canvas/benchmark/benchmark.h @@ -0,0 +1,26 @@ +#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; +}; |