Index: dm/DMPDFTask.h |
diff --git a/dm/DMPDFTask.h b/dm/DMPDFTask.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d273df66d88af0128155af30d9b726c64163213b |
--- /dev/null |
+++ b/dm/DMPDFTask.h |
@@ -0,0 +1,40 @@ |
+#ifndef DMPDFTask_DEFINED |
+#define DMPDFTask_DEFINED |
+ |
+#include "DMPDFRasterizeTask.h" |
+#include "DMExpectations.h" |
+#include "DMTask.h" |
+#include "SkBitmap.h" |
+#include "SkString.h" |
+#include "SkTemplates.h" |
+#include "gm.h" |
+ |
+namespace DM { |
+ |
+// This task renders a GM using Skia's PDF backend. |
+// If rasterizePdfProc is non-NULL, it will spawn a PDFRasterizeTask. |
+class PDFTask : public CpuTask { |
+public: |
+ PDFTask(const char* suffix, |
+ Reporter*, |
+ TaskRunner*, |
+ const Expectations&, |
+ skiagm::GMRegistry::Factory, |
+ RasterizePdfProc); |
+ |
+ virtual void draw() SK_OVERRIDE; |
+ |
+ virtual bool shouldSkip() const SK_OVERRIDE; |
+ |
+ virtual SkString name() const SK_OVERRIDE { return fName; } |
+ |
+private: |
+ SkAutoTDelete<skiagm::GM> fGM; |
+ const SkString fName; |
+ const Expectations& fExpectations; |
+ RasterizePdfProc fRasterize; |
+}; |
+ |
+} // namespace DM |
+ |
+#endif // DMPDFTask_DEFINED |