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

Side by Side Diff: dm/DMSrcSink.h

Issue 891823002: DM: paths as implict strings too. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 10 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/DM.cpp ('k') | dm/DMSrcSink.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #ifndef DMSrcSink_DEFINED 1 #ifndef DMSrcSink_DEFINED
2 #define DMSrcSink_DEFINED 2 #define DMSrcSink_DEFINED
3 3
4 #include "DMGpuSupport.h" 4 #include "DMGpuSupport.h"
5 #include "SkBBHFactory.h" 5 #include "SkBBHFactory.h"
6 #include "SkBBoxHierarchy.h" 6 #include "SkBBoxHierarchy.h"
7 #include "SkBitmap.h" 7 #include "SkBitmap.h"
8 #include "SkCanvas.h" 8 #include "SkCanvas.h"
9 #include "SkData.h" 9 #include "SkData.h"
10 #include "SkGPipe.h" 10 #include "SkGPipe.h"
11 #include "SkNullCanvas.h" 11 #include "SkNullCanvas.h"
12 #include "SkPicture.h" 12 #include "SkPicture.h"
13 #include "gm.h" 13 #include "gm.h"
14 14
15 namespace DM { 15 namespace DM {
16 16
17 // This is just convenience. It lets you use either return "foo" or return SkSt ringPrintf(...). 17 // This is just convenience. It lets you use either return "foo" or return SkSt ringPrintf(...).
18 struct ImplicitString : public SkString { 18 struct ImplicitString : public SkString {
19 template <typename T> 19 template <typename T>
20 ImplicitString(const T& s) : SkString(s) {} 20 ImplicitString(const T& s) : SkString(s) {}
21 }; 21 };
22 typedef ImplicitString Error; 22 typedef ImplicitString Error;
23 typedef ImplicitString Name; 23 typedef ImplicitString Name;
24 typedef ImplicitString Path;
24 25
25 struct Src { 26 struct Src {
26 // All Srcs must be thread safe. 27 // All Srcs must be thread safe.
27 virtual ~Src() {} 28 virtual ~Src() {}
28 virtual Error SK_WARN_UNUSED_RESULT draw(SkCanvas*) const = 0; 29 virtual Error SK_WARN_UNUSED_RESULT draw(SkCanvas*) const = 0;
29 virtual SkISize size() const = 0; 30 virtual SkISize size() const = 0;
30 virtual Name name() const = 0; 31 virtual Name name() const = 0;
31 }; 32 };
32 33
33 struct Sink { 34 struct Sink {
(...skipping 19 matching lines...) Expand all
53 54
54 Error draw(SkCanvas*) const SK_OVERRIDE; 55 Error draw(SkCanvas*) const SK_OVERRIDE;
55 SkISize size() const SK_OVERRIDE; 56 SkISize size() const SK_OVERRIDE;
56 Name name() const SK_OVERRIDE; 57 Name name() const SK_OVERRIDE;
57 private: 58 private:
58 skiagm::GMRegistry::Factory fFactory; 59 skiagm::GMRegistry::Factory fFactory;
59 }; 60 };
60 61
61 class ImageSrc : public Src { 62 class ImageSrc : public Src {
62 public: 63 public:
63 explicit ImageSrc(SkString path, int subsets = 0); 64 explicit ImageSrc(Path path, int subsets = 0);
64 65
65 Error draw(SkCanvas*) const SK_OVERRIDE; 66 Error draw(SkCanvas*) const SK_OVERRIDE;
66 SkISize size() const SK_OVERRIDE; 67 SkISize size() const SK_OVERRIDE;
67 Name name() const SK_OVERRIDE; 68 Name name() const SK_OVERRIDE;
68 private: 69 private:
69 SkString fPath; 70 Path fPath;
70 int fSubsets; 71 int fSubsets;
71 }; 72 };
72 73
73 class SKPSrc : public Src { 74 class SKPSrc : public Src {
74 public: 75 public:
75 explicit SKPSrc(SkString path); 76 explicit SKPSrc(Path path);
76 77
77 Error draw(SkCanvas*) const SK_OVERRIDE; 78 Error draw(SkCanvas*) const SK_OVERRIDE;
78 SkISize size() const SK_OVERRIDE; 79 SkISize size() const SK_OVERRIDE;
79 Name name() const SK_OVERRIDE; 80 Name name() const SK_OVERRIDE;
80 private: 81 private:
81 SkString fPath; 82 Path fPath;
82 }; 83 };
83 84
84 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~*/ 85 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~*/
85 86
86 class GPUSink : public Sink { 87 class GPUSink : public Sink {
87 public: 88 public:
88 GPUSink(GrContextFactory::GLContextType, GrGLStandard, int samples, bool dfT ext, bool threaded); 89 GPUSink(GrContextFactory::GLContextType, GrGLStandard, int samples, bool dfT ext, bool threaded);
89 90
90 Error draw(const Src&, SkBitmap*, SkWStream*) const SK_OVERRIDE; 91 Error draw(const Src&, SkBitmap*, SkWStream*) const SK_OVERRIDE;
91 int enclave() const SK_OVERRIDE; 92 int enclave() const SK_OVERRIDE;
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
181 Error draw(const Src& src, SkBitmap*, SkWStream* out) const SK_OVERRIDE { 182 Error draw(const Src& src, SkBitmap*, SkWStream* out) const SK_OVERRIDE {
182 return src.draw(SkCreateNullCanvas()); 183 return src.draw(SkCreateNullCanvas());
183 } 184 }
184 int enclave() const SK_OVERRIDE { return kAnyThread_Enclave; } 185 int enclave() const SK_OVERRIDE { return kAnyThread_Enclave; }
185 const char* fileExtension() const SK_OVERRIDE { return ""; } 186 const char* fileExtension() const SK_OVERRIDE { return ""; }
186 }; 187 };
187 188
188 } // namespace DM 189 } // namespace DM
189 190
190 #endif//DMSrcSink_DEFINED 191 #endif//DMSrcSink_DEFINED
OLDNEW
« no previous file with comments | « dm/DM.cpp ('k') | dm/DMSrcSink.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698