blob: 7efd951e0f37ca96ad5ab8eab899f306bf943150 [file] [log] [blame]
commit-bot@chromium.orge3ff5582014-04-01 16:24:06 +00001#ifndef DMRecordTask_DEFINED
2#define DMRecordTask_DEFINED
3
4#include "DMTask.h"
5#include "SkBitmap.h"
6#include "SkString.h"
7#include "SkTemplates.h"
8#include "gm.h"
9
10// Records a GM through an SkRecord, draws it, and compares against the reference bitmap.
11
12namespace DM {
13
14class RecordTask : public CpuTask {
15
16public:
17 RecordTask(const Task& parent, skiagm::GM*, SkBitmap reference);
18
19 virtual void draw() SK_OVERRIDE;
20 virtual bool shouldSkip() const SK_OVERRIDE;
21 virtual SkString name() const SK_OVERRIDE { return fName; }
22
23private:
24 const SkString fName;
25 SkAutoTDelete<skiagm::GM> fGM;
26 const SkBitmap fReference;
27};
28
29} // namespace DM
30
31#endif // DMRecordTask_DEFINED