d36522d12d
This is sort of the near-minimal proof-of-concept skeleton. - It can run existing GMs. - It supports most configs (just not PDF). - --replay is the only "fancy" feature it currently supports Hopefully you will be disturbed by its speed. BUG= R=epoger@google.com Review URL: https://codereview.chromium.org/22839016 git-svn-id: http://skia.googlecode.com/svn/trunk@11802 2bbb7eff-a529-9590-31e7-b0007b416f81
45 lines
1.2 KiB
C++
45 lines
1.2 KiB
C++
#ifndef DMCpuTask_DEFINED
|
|
#define DMCpuTask_DEFINED
|
|
|
|
#include "DMReporter.h"
|
|
#include "DMTask.h"
|
|
#include "DMTaskRunner.h"
|
|
#include "SkBitmap.h"
|
|
#include "SkString.h"
|
|
#include "SkTemplates.h"
|
|
#include "gm.h"
|
|
#include "gm_expectations.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.
|
|
// Currently:
|
|
// --replay: spawn a DMReplayTask to record into a picture, draw the picture, and compare.
|
|
|
|
namespace DM {
|
|
|
|
class CpuTask : public Task {
|
|
public:
|
|
CpuTask(const char* name,
|
|
Reporter*,
|
|
TaskRunner*,
|
|
const skiagm::ExpectationsSource&,
|
|
skiagm::GMRegistry::Factory,
|
|
SkBitmap::Config);
|
|
|
|
virtual void draw() SK_OVERRIDE;
|
|
virtual bool usesGpu() const SK_OVERRIDE { return false; }
|
|
virtual bool shouldSkip() const SK_OVERRIDE;
|
|
virtual SkString name() const SK_OVERRIDE { return fName; }
|
|
|
|
private:
|
|
skiagm::GMRegistry::Factory fGMFactory;
|
|
SkAutoTDelete<skiagm::GM> fGM;
|
|
const SkString fName;
|
|
const skiagm::Expectations fExpectations;
|
|
const SkBitmap::Config fConfig;
|
|
};
|
|
|
|
} // namespace DM
|
|
|
|
#endif // DMCpuTask_DEFINED
|