OLD | NEW |
---|---|
(Empty) | |
1 /* | |
2 * Copyright 2016 Google Inc. | |
3 * | |
4 * Use of this source code is governed by a BSD-style license that can be | |
5 * found in the LICENSE file. | |
6 */ | |
7 | |
8 #ifndef SkPipe_DEFINED | |
9 #define SkPipe_DEFINED | |
10 | |
11 #include "SkTypes.h" | |
12 | |
13 class SkCanvas; | |
14 class SkImage; | |
15 class SkPicture; | |
16 class SkTypefaceSerializer; | |
17 class SkTypefaceDeserializer; | |
18 class SkWStream; | |
19 | |
20 class SkPipeSerializer { | |
21 public: | |
22 SkPipeSerializer(); | |
23 ~SkPipeSerializer(); | |
24 | |
25 void setTypefaceSerializer(SkTypefaceSerializer*); | |
mtklein_C
2016/09/12 19:47:58
Ownership transfer here is unclear. This reads li
reed1
2016/09/12 21:35:23
updated dox
| |
26 | |
27 void resetCache(); | |
28 | |
29 void write(SkPicture*, SkWStream*); | |
30 void write(SkImage*, SkWStream*); | |
31 | |
32 SkCanvas* beginWrite(const SkRect& cullBounds, SkWStream*); | |
33 void endWrite(); | |
34 | |
35 private: | |
36 class Impl; | |
37 Impl* fImpl; | |
mtklein_C
2016/09/12 19:47:58
The usual idiom these days is
private:
class Im
| |
38 }; | |
39 | |
40 class SkPipeDeserializer { | |
41 public: | |
42 SkPipeDeserializer(); | |
43 ~SkPipeDeserializer(); | |
44 | |
45 void setTypefaceDeserializer(SkTypefaceDeserializer*); | |
mtklein_C
2016/09/12 19:47:58
Ditto.
| |
46 | |
47 sk_sp<SkPicture> readPicture(const void*, size_t); | |
48 sk_sp<SkImage> readImage(const void*, size_t); | |
49 bool playback(const void*, size_t, SkCanvas*); | |
50 | |
51 private: | |
52 class Impl; | |
53 Impl* fImpl; | |
54 }; | |
55 | |
56 //////////////////////////////////////////////////////////////////////////////// ////////////////// | |
57 | |
58 class SkTypefaceSerializer { | |
mtklein_C
2016/09/12 19:47:58
Another option you might want to consider for this
reed1
2016/09/12 21:35:22
Just keeping my options open as we think more abou
| |
59 public: | |
60 virtual ~SkTypefaceSerializer() {} | |
61 | |
62 virtual sk_sp<SkData> serialize(SkTypeface*) = 0; | |
63 }; | |
64 | |
65 class SkTypefaceDeserializer { | |
66 public: | |
67 virtual ~SkTypefaceDeserializer() {} | |
68 | |
69 virtual sk_sp<SkTypeface> deserialize(const void* data, size_t size) = 0; | |
70 }; | |
71 | |
72 #endif | |
OLD | NEW |