1ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org#ifndef DMCpuGMTask_DEFINED 2ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org#define DMCpuGMTask_DEFINED 3d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 499589af4e333422639d7e873207dd323fdd6e808commit-bot@chromium.org#include "DMExpectations.h" 5d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "DMReporter.h" 6d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "DMTask.h" 7d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "DMTaskRunner.h" 8d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "SkBitmap.h" 9d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "SkString.h" 10d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "SkTemplates.h" 11d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com#include "gm.h" 12d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 13d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com// This is the main entry point for drawing GMs with the CPU. Commandline 14d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com// flags control whether this kicks off various comparison tasks when done. 15d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 16d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.comnamespace DM { 17d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 18ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.orgclass CpuGMTask : public CpuTask { 19d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.compublic: 20ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org CpuGMTask(const char* config, 21ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org Reporter*, 22ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org TaskRunner*, 23ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org skiagm::GMRegistry::Factory, 24e4d3e605f74a23d050abad29909af421d8b1cf1amtklein const Expectations&, 25ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org SkColorType); 26d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 27d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com virtual void draw() SK_OVERRIDE; 28d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com virtual bool shouldSkip() const SK_OVERRIDE; 29d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com virtual SkString name() const SK_OVERRIDE { return fName; } 30d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 31d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.comprivate: 32d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com skiagm::GMRegistry::Factory fGMFactory; 33d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com SkAutoTDelete<skiagm::GM> fGM; 34d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com const SkString fName; 3599589af4e333422639d7e873207dd323fdd6e808commit-bot@chromium.org const Expectations& fExpectations; 3615a140599942f70e47380e3f700a825c7cece3b4commit-bot@chromium.org const SkColorType fColorType; 37d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com}; 38d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 39d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com} // namespace DM 40d36522d12d3e71958e50683a7eef43dc2a47d96dmtklein@google.com 41ef57b7e65330d5f794a513630517907500f1c1d0commit-bot@chromium.org#endif // DMCpuGMTask_DEFINED 42