OLD | NEW |
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 #include "SkCodec.h" | 8 #include "SkCodec.h" |
9 #include "SkColorTable.h" | 9 #include "SkColorTable.h" |
10 #include "SkEncodedFormat.h" | 10 #include "SkEncodedFormat.h" |
11 #include "SkImageInfo.h" | 11 #include "SkImageInfo.h" |
12 #include "SkRefCnt.h" | 12 #include "SkRefCnt.h" |
13 #include "SkSwizzler.h" | 13 #include "SkSwizzler.h" |
14 | 14 |
15 extern "C" { | 15 #ifdef SKIA_PNG_PREFIXED |
16 #include "png.h" | 16 // this must proceed png.h |
17 } | 17 #include "pngprefix.h" |
| 18 #endif |
| 19 #include "png.h" |
18 | 20 |
19 class SkScanlineDecoder; | 21 class SkScanlineDecoder; |
20 class SkStream; | 22 class SkStream; |
21 | 23 |
22 class SkPngCodec : public SkCodec { | 24 class SkPngCodec : public SkCodec { |
23 public: | 25 public: |
24 // Assumes IsPng was called and returned true. | 26 // Assumes IsPng was called and returned true. |
25 static SkCodec* NewFromStream(SkStream*); | 27 static SkCodec* NewFromStream(SkStream*); |
26 static bool IsPng(SkStream*); | 28 static bool IsPng(SkStream*); |
27 protected: | 29 protected: |
(...skipping 23 matching lines...) Expand all Loading... |
51 // Calls rewindIfNeeded, and returns true if the decoder can continue. | 53 // Calls rewindIfNeeded, and returns true if the decoder can continue. |
52 bool handleRewind(); | 54 bool handleRewind(); |
53 bool decodePalette(bool premultiply); | 55 bool decodePalette(bool premultiply); |
54 void finish(); | 56 void finish(); |
55 void destroyReadStruct(); | 57 void destroyReadStruct(); |
56 | 58 |
57 friend class SkPngScanlineDecoder; | 59 friend class SkPngScanlineDecoder; |
58 | 60 |
59 typedef SkCodec INHERITED; | 61 typedef SkCodec INHERITED; |
60 }; | 62 }; |
OLD | NEW |