diff options
Diffstat (limited to 'chromium/third_party/skia/dm/DMPDFRasterizeTask.h')
-rw-r--r-- | chromium/third_party/skia/dm/DMPDFRasterizeTask.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/chromium/third_party/skia/dm/DMPDFRasterizeTask.h b/chromium/third_party/skia/dm/DMPDFRasterizeTask.h new file mode 100644 index 00000000000..2cc1ef70dab --- /dev/null +++ b/chromium/third_party/skia/dm/DMPDFRasterizeTask.h @@ -0,0 +1,40 @@ +/* + * Copyright 2014 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#ifndef DMPDFRasterizeTask_DEFINED +#define DMPDFRasterizeTask_DEFINED + +#include "DMTask.h" +#include "SkBitmap.h" +#include "SkData.h" +#include "SkStream.h" +#include "SkString.h" +#include "SkTemplates.h" + +namespace DM { + +typedef bool (*RasterizePdfProc)(SkStream* pdf, SkBitmap* output); + +class PDFRasterizeTask : public CpuTask { +public: + PDFRasterizeTask(const Task& parent, + SkData* pdf, + RasterizePdfProc); + + virtual void draw() SK_OVERRIDE; + virtual bool shouldSkip() const SK_OVERRIDE { return NULL == fRasterize; } + virtual SkString name() const SK_OVERRIDE { return fName; } + +private: + const SkString fName; + SkAutoTUnref<SkData> fPdf; + RasterizePdfProc fRasterize; +}; + +} // namespace DM + +#endif // DMPDFRasterizeTask_DEFINED |