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

Side by Side Diff: dm/DMSrcSink.h

Issue 1513323002: DM: fix `--config $VIA-pdf` to not crash (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: 2015-12-10 (Thursday) 15:08:03 EST Created 5 years 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 /* 1 /*
2 * Copyright 2015 Google Inc. 2 * Copyright 2015 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef DMSrcSink_DEFINED 8 #ifndef DMSrcSink_DEFINED
9 #define DMSrcSink_DEFINED 9 #define DMSrcSink_DEFINED
10 10
(...skipping 271 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 int enclave() const override { return kAnyThread_Enclave; } 282 int enclave() const override { return kAnyThread_Enclave; }
283 const char* fileExtension() const override { return "svg"; } 283 const char* fileExtension() const override { return "svg"; }
284 SinkFlags flags() const override { return SinkFlags{ SinkFlags::kVector, Sin kFlags::kDirect }; } 284 SinkFlags flags() const override { return SinkFlags{ SinkFlags::kVector, Sin kFlags::kDirect }; }
285 }; 285 };
286 286
287 287
288 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~*/ 288 /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~*/
289 289
290 class Via : public Sink { 290 class Via : public Sink {
291 public: 291 public:
292 explicit Via(Sink* sink) : fSink(sink) {} 292 explicit Via(Name name, Sink* sink) : fName(name), fSink(sink) {}
293 const char* fileExtension() const override { return fSink->fileExtension(); } 293 const char* fileExtension() const override { return fSink->fileExtension(); }
294 int enclave() const override { return fSink->enclave(); } 294 int enclave() const override { return fSink->enclave(); }
295 Name decorateName(const Src& src) const {
296 return SkStringPrintf("%s-%s", src.name().c_str(), fName.c_str());
297 }
295 SinkFlags flags() const override { 298 SinkFlags flags() const override {
296 SinkFlags flags = fSink->flags(); 299 SinkFlags flags = fSink->flags();
297 flags.approach = SinkFlags::kIndirect; 300 flags.approach = SinkFlags::kIndirect;
298 return flags; 301 return flags;
299 } 302 }
300 protected: 303 protected:
304 Name fName;
301 SkAutoTDelete<Sink> fSink; 305 SkAutoTDelete<Sink> fSink;
302 }; 306 };
303 307
304 class ViaMatrix : public Via { 308 class ViaMatrix : public Via {
305 public: 309 public:
306 ViaMatrix(SkMatrix, Sink*); 310 ViaMatrix(Name, SkMatrix, Sink*);
307 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 311 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
308 private: 312 private:
309 const SkMatrix fMatrix; 313 const SkMatrix fMatrix;
310 }; 314 };
311 315
312 class ViaUpright : public Via { 316 class ViaUpright : public Via {
313 public: 317 public:
314 ViaUpright(SkMatrix, Sink*); 318 ViaUpright(Name, SkMatrix, Sink*);
315 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 319 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
316 private: 320 private:
317 const SkMatrix fMatrix; 321 const SkMatrix fMatrix;
318 }; 322 };
319 323
320 class ViaPipe : public Via { 324 class ViaPipe : public Via {
321 public: 325 public:
322 explicit ViaPipe(Sink* sink) : Via(sink) {} 326 explicit ViaPipe(Name name, Sink* sink) : Via(name, sink) {}
323 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 327 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
324 }; 328 };
325 329
326 class ViaRemote : public Via { 330 class ViaRemote : public Via {
327 public: 331 public:
328 ViaRemote(bool cache, Sink* sink) : Via(sink), fCache(cache) {} 332 ViaRemote(Name name, bool cache, Sink* sink) : Via(name, sink), fCache(cache ) {}
329 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 333 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
330 private: 334 private:
331 bool fCache; 335 bool fCache;
332 }; 336 };
333 337
334 class ViaSerialization : public Via { 338 class ViaSerialization : public Via {
335 public: 339 public:
336 explicit ViaSerialization(Sink* sink) : Via(sink) {} 340 explicit ViaSerialization(Name name, Sink* sink) : Via(name, sink) {}
337 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 341 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
338 }; 342 };
339 343
340 class ViaTiles : public Via { 344 class ViaTiles : public Via {
341 public: 345 public:
342 ViaTiles(int w, int h, SkBBHFactory*, Sink*); 346 ViaTiles(Name, int w, int h, SkBBHFactory*, Sink*);
343 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 347 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
344 private: 348 private:
345 const int fW, fH; 349 const int fW, fH;
346 SkAutoTDelete<SkBBHFactory> fFactory; 350 SkAutoTDelete<SkBBHFactory> fFactory;
347 }; 351 };
348 352
349 class ViaSecondPicture : public Via { 353 class ViaSecondPicture : public Via {
350 public: 354 public:
351 explicit ViaSecondPicture(Sink* sink) : Via(sink) {} 355 explicit ViaSecondPicture(Name name, Sink* sink) : Via(name, sink) {}
352 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 356 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
353 }; 357 };
354 358
355 class ViaSingletonPictures : public Via { 359 class ViaSingletonPictures : public Via {
356 public: 360 public:
357 explicit ViaSingletonPictures(Sink* sink) : Via(sink) {} 361 explicit ViaSingletonPictures(Name name, Sink* sink) : Via(name, sink) {}
358 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 362 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
359 }; 363 };
360 364
361 class ViaTwice : public Via { 365 class ViaTwice : public Via {
362 public: 366 public:
363 explicit ViaTwice(Sink* sink) : Via(sink) {} 367 explicit ViaTwice(Name name, Sink* sink) : Via(name, sink) {}
364 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override; 368 Error draw(const Src&, SkBitmap*, SkWStream*, SkString*) const override;
365 }; 369 };
366 370
367 } // namespace DM 371 } // namespace DM
368 372
369 #endif//DMSrcSink_DEFINED 373 #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