diff options
author | mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-10-16 13:02:15 +0000 |
---|---|---|
committer | mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-10-16 13:02:15 +0000 |
commit | d36522d12d3e71958e50683a7eef43dc2a47d96d (patch) | |
tree | 3645838c92e0144a6e70984edb74ce0c7c3bd829 /dm/DMReplayTask.h | |
parent | beede90eae4b76b97722d5f576ea5cb81df98af7 (diff) |
dm is like gm, but faster and with fewer features.
This is sort of the near-minimal proof-of-concept skeleton.
- It can run existing GMs.
- It supports most configs (just not PDF).
- --replay is the only "fancy" feature it currently supports
Hopefully you will be disturbed by its speed.
BUG=
R=epoger@google.com
Review URL: https://codereview.chromium.org/22839016
git-svn-id: http://skia.googlecode.com/svn/trunk@11802 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'dm/DMReplayTask.h')
-rw-r--r-- | dm/DMReplayTask.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/dm/DMReplayTask.h b/dm/DMReplayTask.h new file mode 100644 index 0000000000..0ed9351c13 --- /dev/null +++ b/dm/DMReplayTask.h @@ -0,0 +1,40 @@ +#ifndef DMReplayTask_DEFINED +#define DMReplayTask_DEFINED + +#include "DMReporter.h" +#include "DMTask.h" +#include "DMTaskRunner.h" +#include "SkBitmap.h" +#include "SkString.h" +#include "SkTemplates.h" +#include "gm.h" +#include "gm_expectations.h" + +// Records a GM through an SkPicture, draws it, and compares against the reference checksum. + +namespace DM { + +class ReplayTask : public Task { + +public: + ReplayTask(const char* name, + const Task& parent, + skiagm::GM*, + skiagm::GmResultDigest reference, + SkBitmap::Config); + + virtual void draw() SK_OVERRIDE; + virtual bool usesGpu() const SK_OVERRIDE { return false; } + virtual bool shouldSkip() const SK_OVERRIDE; + virtual SkString name() const SK_OVERRIDE { return fName; } + +private: + const SkString fName; + SkAutoTDelete<skiagm::GM> fGM; + const skiagm::GmResultDigest fReference; + const SkBitmap::Config fConfig; +}; + +} // namespace DM + +#endif // DMReplayTask_DEFINED |