Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 | |
| 2 /* | 1 /* |
|
sugoi1
2013/08/29 18:55:53
In case you you're curious, I didn't actually repl
| |
| 3 * Copyright 2011 Google Inc. | 2 * Copyright 2013 Google Inc. |
| 4 * | 3 * |
| 5 * 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 |
| 6 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 7 */ | 6 */ |
| 8 | 7 |
| 9 #ifndef SkOrderedReadBuffer_DEFINED | 8 #ifndef SkSecureReadBuffer_DEFINED |
| 10 #define SkOrderedReadBuffer_DEFINED | 9 #define SkSecureReadBuffer_DEFINED |
| 11 | 10 |
| 12 #include "SkRefCnt.h" | 11 #include "SkRefCnt.h" |
| 13 #include "SkBitmapHeap.h" | 12 #include "SkBitmapHeap.h" |
| 14 #include "SkFlattenableBuffers.h" | 13 #include "SkFlattenableBuffers.h" |
| 15 #include "SkPath.h" | 14 #include "SkPath.h" |
| 16 #include "SkPicture.h" | 15 #include "SkPicture.h" |
| 17 #include "SkReader32.h" | 16 #include "SkSecureReader32.h" |
| 18 | 17 |
| 19 class SkBitmap; | 18 class SkBitmap; |
| 20 | 19 |
| 21 #if defined(SK_DEBUG) && defined(SK_BUILD_FOR_MAC) | 20 #if defined(SK_DEBUG) && defined(SK_BUILD_FOR_MAC) |
| 22 #define DEBUG_NON_DETERMINISTIC_ASSERT | 21 #define DEBUG_NON_DETERMINISTIC_ASSERT |
| 23 #endif | 22 #endif |
| 24 | 23 |
| 25 class SkOrderedReadBuffer : public SkFlattenableReadBuffer { | 24 class SkSecureReadBuffer : public SkFlattenableReadBuffer { |
| 26 public: | 25 public: |
| 27 SkOrderedReadBuffer(); | 26 SkSecureReadBuffer(); |
| 28 SkOrderedReadBuffer(const void* data, size_t size); | 27 SkSecureReadBuffer(const void* data, size_t size); |
| 29 SkOrderedReadBuffer(SkStream* stream); | 28 SkSecureReadBuffer(SkStream* stream); |
| 30 virtual ~SkOrderedReadBuffer(); | 29 virtual ~SkSecureReadBuffer(); |
| 31 | 30 |
| 32 virtual SkOrderedReadBuffer* getOrderedBinaryBuffer() SK_OVERRIDE { return t his; } | 31 SkSecureReader32* getReader32() { return &fReader; } |
| 33 | |
| 34 SkReader32* getReader32() { return &fReader; } | |
| 35 | 32 |
| 36 uint32_t size() { return fReader.size(); } | 33 uint32_t size() { return fReader.size(); } |
| 37 uint32_t offset() { return fReader.offset(); } | 34 uint32_t offset() { return fReader.offset(); } |
| 38 bool eof() { return fReader.eof(); } | 35 bool eof() { return fReader.eof(); } |
| 39 const void* skip(size_t size) { return fReader.skip(size); } | 36 const void* skip(size_t size) { return fReader.skip(size); } |
| 40 | 37 |
| 41 // primitives | 38 // primitives |
| 42 virtual bool readBool() SK_OVERRIDE; | 39 virtual bool readBool() SK_OVERRIDE; |
| 43 virtual SkColor readColor() SK_OVERRIDE; | 40 virtual SkColor readColor() SK_OVERRIDE; |
| 44 virtual SkFixed readFixed() SK_OVERRIDE; | 41 virtual SkFixed readFixed() SK_OVERRIDE; |
| (...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 106 /** | 103 /** |
| 107 * Provide a function to decode an SkBitmap from encoded data. Only used if the writer | 104 * Provide a function to decode an SkBitmap from encoded data. Only used if the writer |
| 108 * encoded the SkBitmap. If the proper decoder cannot be used, a red bitmap with the | 105 * encoded the SkBitmap. If the proper decoder cannot be used, a red bitmap with the |
| 109 * appropriate size will be used. | 106 * appropriate size will be used. |
| 110 */ | 107 */ |
| 111 void setBitmapDecoder(SkPicture::InstallPixelRefProc bitmapDecoder) { | 108 void setBitmapDecoder(SkPicture::InstallPixelRefProc bitmapDecoder) { |
| 112 fBitmapDecoder = bitmapDecoder; | 109 fBitmapDecoder = bitmapDecoder; |
| 113 } | 110 } |
| 114 | 111 |
| 115 private: | 112 private: |
| 116 SkReader32 fReader; | 113 SkSecureReader32 fReader; |
| 117 void* fMemoryPtr; | 114 void* fMemoryPtr; |
| 118 | 115 |
| 119 SkBitmapHeapReader* fBitmapStorage; | 116 SkBitmapHeapReader* fBitmapStorage; |
| 120 SkTypeface** fTFArray; | 117 SkTypeface** fTFArray; |
| 121 int fTFCount; | 118 int fTFCount; |
| 122 | 119 |
| 123 SkTDArray<SkFlattenable::Factory>* fFactoryTDArray; | 120 SkTDArray<SkFlattenable::Factory>* fFactoryTDArray; |
| 124 SkFlattenable::Factory* fFactoryArray; | 121 SkFlattenable::Factory* fFactoryArray; |
| 125 int fFactoryCount; | 122 int fFactoryCount; |
| 126 | 123 |
| 127 SkPicture::InstallPixelRefProc fBitmapDecoder; | 124 SkPicture::InstallPixelRefProc fBitmapDecoder; |
| 128 | 125 |
| 129 #ifdef DEBUG_NON_DETERMINISTIC_ASSERT | 126 #ifdef DEBUG_NON_DETERMINISTIC_ASSERT |
| 130 // Debugging counter to keep track of how many bitmaps we | 127 // Debugging counter to keep track of how many bitmaps we |
| 131 // have decoded. | 128 // have decoded. |
| 132 int fDecodedBitmapIndex; | 129 int fDecodedBitmapIndex; |
| 133 #endif // DEBUG_NON_DETERMINISTIC_ASSERT | 130 #endif // DEBUG_NON_DETERMINISTIC_ASSERT |
| 134 | 131 |
| 135 typedef SkFlattenableReadBuffer INHERITED; | 132 typedef SkFlattenableReadBuffer INHERITED; |
| 136 }; | 133 }; |
| 137 | 134 |
| 138 #endif // SkOrderedReadBuffer_DEFINED | 135 #endif // SkSecureReadBuffer_DEFINED |
| OLD | NEW |