aboutsummaryrefslogtreecommitdiffhomepage
path: root/dm/DMCpuGMTask.h
diff options
context:
space:
mode:
Diffstat (limited to 'dm/DMCpuGMTask.h')
-rw-r--r--dm/DMCpuGMTask.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/dm/DMCpuGMTask.h b/dm/DMCpuGMTask.h
new file mode 100644
index 0000000000..8258f69e2e
--- /dev/null
+++ b/dm/DMCpuGMTask.h
@@ -0,0 +1,38 @@
+#ifndef DMCpuGMTask_DEFINED
+#define DMCpuGMTask_DEFINED
+
+#include "DMReporter.h"
+#include "DMTask.h"
+#include "DMTaskRunner.h"
+#include "SkBitmap.h"
+#include "SkString.h"
+#include "SkTemplates.h"
+#include "gm.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.
+
+namespace DM {
+
+class CpuGMTask : public CpuTask {
+public:
+ CpuGMTask(const char* config,
+ Reporter*,
+ TaskRunner*,
+ skiagm::GMRegistry::Factory,
+ SkColorType);
+
+ void draw() SK_OVERRIDE;
+ bool shouldSkip() const SK_OVERRIDE;
+ SkString name() const SK_OVERRIDE { return fName; }
+
+private:
+ skiagm::GMRegistry::Factory fGMFactory;
+ SkAutoTDelete<skiagm::GM> fGM;
+ const SkString fName;
+ const SkColorType fColorType;
+};
+
+} // namespace DM
+
+#endif // DMCpuGMTask_DEFINED