Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(228)

Side by Side Diff: dm/DMTask.cpp

Issue 185233004: DM: tweak output. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: ws Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « dm/DMTask.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #include "DMTask.h" 1 #include "DMTask.h"
2 #include "DMTaskRunner.h" 2 #include "DMTaskRunner.h"
3 3
4 namespace DM { 4 namespace DM {
5 5
6 Task::Task(Reporter* reporter, TaskRunner* taskRunner) 6 Task::Task(Reporter* reporter, TaskRunner* taskRunner)
7 : fReporter(reporter) 7 : fReporter(reporter)
8 , fTaskRunner(taskRunner) 8 , fTaskRunner(taskRunner)
9 , fDepth(0) { 9 , fDepth(0) {
10 fReporter->start(); 10 fReporter->start();
11 } 11 }
12 12
13 Task::Task(const Task& parent) 13 Task::Task(const Task& parent)
14 : fReporter(parent.fReporter) 14 : fReporter(parent.fReporter)
15 , fTaskRunner(parent.fTaskRunner) 15 , fTaskRunner(parent.fTaskRunner)
16 , fDepth(parent.depth() + 1) { 16 , fDepth(parent.depth() + 1) {
17 fReporter->start(); 17 fReporter->start();
18 } 18 }
19 19
20 void Task::fail(const char* msg) { 20 void Task::fail(const char* msg) {
21 SkString failure(this->name()); 21 SkString failure(this->name());
22 if (msg) { 22 if (msg) {
23 failure.appendf(": %s", msg); 23 failure.appendf(": %s", msg);
24 } 24 }
25 fReporter->fail(failure); 25 fReporter->fail(failure);
26 } 26 }
27 27
28 void Task::start() {
29 fStart = SkTime::GetMSecs();
30 }
31
28 void Task::finish() { 32 void Task::finish() {
29 fReporter->finish(this->name()); 33 fReporter->finish(this->name(), SkTime::GetMSecs() - fStart);
30 } 34 }
31 35
32 void Task::spawnChild(CpuTask* task) { 36 void Task::spawnChild(CpuTask* task) {
33 fTaskRunner->add(task); 37 fTaskRunner->add(task);
34 } 38 }
35 39
36 CpuTask::CpuTask(Reporter* reporter, TaskRunner* taskRunner) : Task(reporter, ta skRunner) {} 40 CpuTask::CpuTask(Reporter* reporter, TaskRunner* taskRunner) : Task(reporter, ta skRunner) {}
37 CpuTask::CpuTask(const Task& parent) : Task(parent) {} 41 CpuTask::CpuTask(const Task& parent) : Task(parent) {}
38 42
39 void CpuTask::run() { 43 void CpuTask::run() {
44 this->start();
40 if (!this->shouldSkip()) { 45 if (!this->shouldSkip()) {
41 this->draw(); 46 this->draw();
42 } 47 }
43 this->finish(); 48 this->finish();
44 SkDELETE(this); 49 SkDELETE(this);
45 } 50 }
46 51
47 GpuTask::GpuTask(Reporter* reporter, TaskRunner* taskRunner) : Task(reporter, ta skRunner) {} 52 GpuTask::GpuTask(Reporter* reporter, TaskRunner* taskRunner) : Task(reporter, ta skRunner) {}
48 53
49 void GpuTask::run(GrContextFactory& factory) { 54 void GpuTask::run(GrContextFactory& factory) {
55 this->start();
50 if (!this->shouldSkip()) { 56 if (!this->shouldSkip()) {
51 this->draw(&factory); 57 this->draw(&factory);
52 } 58 }
53 this->finish(); 59 this->finish();
54 SkDELETE(this); 60 SkDELETE(this);
55 } 61 }
56 62
57 63
58 64
59 } // namespace DM 65 } // namespace DM
OLDNEW
« no previous file with comments | « dm/DMTask.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698