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 // Ownership is not transferred, so caller must ceep the serializer alive | |
hal.canary
2016/09/13 15:52:54
s/ceep/keep/
| |
26 void setTypefaceSerializer(SkTypefaceSerializer*); | |
27 | |
28 void resetCache(); | |
29 | |
30 void write(SkPicture*, SkWStream*); | |
31 void write(SkImage*, SkWStream*); | |
32 | |
33 SkCanvas* beginWrite(const SkRect& cullBounds, SkWStream*); | |
34 void endWrite(); | |
35 | |
36 private: | |
37 class Impl; | |
38 std::unique_ptr<Impl> fImpl; | |
39 }; | |
40 | |
41 class SkPipeDeserializer { | |
42 public: | |
43 SkPipeDeserializer(); | |
44 ~SkPipeDeserializer(); | |
45 | |
46 // Ownership is not transferred, so caller must ceep the deserializer alive | |
47 void setTypefaceDeserializer(SkTypefaceDeserializer*); | |
48 | |
49 sk_sp<SkPicture> readPicture(const void*, size_t); | |
50 sk_sp<SkImage> readImage(const void*, size_t); | |
51 bool playback(const void*, size_t, SkCanvas*); | |
52 | |
53 private: | |
54 class Impl; | |
55 std::unique_ptr<Impl> fImpl; | |
56 }; | |
57 | |
58 //////////////////////////////////////////////////////////////////////////////// ////////////////// | |
59 | |
60 class SkTypefaceSerializer { | |
61 public: | |
62 virtual ~SkTypefaceSerializer() {} | |
63 | |
64 virtual sk_sp<SkData> serialize(SkTypeface*) = 0; | |
65 }; | |
66 | |
67 class SkTypefaceDeserializer { | |
68 public: | |
69 virtual ~SkTypefaceDeserializer() {} | |
70 | |
71 virtual sk_sp<SkTypeface> deserialize(const void* data, size_t size) = 0; | |
72 }; | |
73 | |
74 #endif | |
OLD | NEW |