Index: dm/DMCpuTask.h |
diff --git a/dm/DMCpuTask.h b/dm/DMCpuTask.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..3884b357265cc47706a0a5a50d4cc7539be42a5b |
--- /dev/null |
+++ b/dm/DMCpuTask.h |
@@ -0,0 +1,44 @@ |
+#ifndef DMCpuTask_DEFINED |
+#define DMCpuTask_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" |
+ |
+// This is the main entry point for drawing GMs with the CPU. Commandline |
+// flags control whether this kicks off various comparison tasks when done. |
+// Currently: |
+// --replay: spawn a DMReplayTask to record into a picture, draw the picture, and compare. |
+ |
+namespace DM { |
+ |
+class CpuTask : public Task { |
+public: |
+ CpuTask(const char* name, |
+ Reporter*, |
+ TaskRunner*, |
+ const skiagm::ExpectationsSource&, |
+ skiagm::GMRegistry::Factory, |
+ SkBitmap::Config); |
+ |
+ void draw(); |
+ bool usesGpu() const { return false; } |
+ bool shouldSkip() const; |
+ SkString name() const { return fName; } |
+ |
+private: |
+ skiagm::GMRegistry::Factory fGMFactory; |
+ SkAutoTDelete<skiagm::GM> fGM; |
+ const SkString fName; |
+ const skiagm::Expectations fExpectations; |
+ const SkBitmap::Config fConfig; |
+}; |
+ |
+} // namespace DM |
+ |
+#endif // DMCpuTask_DEFINED |