blob: 1f8b83632bbb7a708e20c6c82564f39a03f6ac11 [file] [log] [blame]
commit-bot@chromium.org192cbf62013-10-21 18:40:25 +00001#ifndef DMSerializeTask_DEFINED
2#define DMSerializeTask_DEFINED
3
4#include "DMTask.h"
5#include "SkBitmap.h"
6#include "SkString.h"
7#include "SkTemplates.h"
8#include "gm.h"
9
10// Record a picture, serialize it, deserialize it, then draw it and compare to reference bitmap.
11
12namespace DM {
13
commit-bot@chromium.orgef57b7e2014-02-28 20:31:31 +000014class SerializeTask : public CpuTask {
commit-bot@chromium.org192cbf62013-10-21 18:40:25 +000015
16public:
17 SerializeTask(const Task& parent,
18 skiagm::GM*,
19 SkBitmap reference);
20
21 virtual void draw() SK_OVERRIDE;
commit-bot@chromium.org192cbf62013-10-21 18:40:25 +000022 virtual bool shouldSkip() const SK_OVERRIDE;
23 virtual SkString name() const SK_OVERRIDE { return fName; }
24
25private:
26 const SkString fName;
27 SkAutoTDelete<skiagm::GM> fGM;
28 const SkBitmap fReference;
29};
30
31} // namespace DM
32
33#endif // DMSerializeTask_DEFINED