OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2012 Google Inc. | 2 * Copyright 2012 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 | 8 |
9 #ifndef GrSurface_DEFINED | 9 #ifndef GrSurface_DEFINED |
10 #define GrSurface_DEFINED | 10 #define GrSurface_DEFINED |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
96 * @param height height of rectangle to write in pixels. | 96 * @param height height of rectangle to write in pixels. |
97 * @param config the pixel config of the source buffer | 97 * @param config the pixel config of the source buffer |
98 * @param buffer memory to read the rectangle from. | 98 * @param buffer memory to read the rectangle from. |
99 * @param rowBytes number of bytes between consecutive rows. Zero means
rows are tightly | 99 * @param rowBytes number of bytes between consecutive rows. Zero means
rows are tightly |
100 * packed. | 100 * packed. |
101 * @param pixelOpsFlags See the GrContext::PixelOpsFlags enum. | 101 * @param pixelOpsFlags See the GrContext::PixelOpsFlags enum. |
102 * | 102 * |
103 * @return true if the read succeeded, false if not. The read can fail becau
se of an unsupported | 103 * @return true if the read succeeded, false if not. The read can fail becau
se of an unsupported |
104 * pixel config. | 104 * pixel config. |
105 */ | 105 */ |
106 bool writePixels(int left, int top, int width, int height, | 106 bool writePixels(GrDrawContext* dc, int left, int top, int width, int height
, |
107 GrPixelConfig config, | 107 GrPixelConfig config, |
108 const void* buffer, | 108 const void* buffer, |
109 size_t rowBytes = 0, | 109 size_t rowBytes = 0, |
110 uint32_t pixelOpsFlags = 0); | 110 uint32_t pixelOpsFlags = 0); |
111 | 111 |
112 /** | 112 /** |
113 * After this returns any pending writes to the surface will be issued to th
e backend 3D API. | 113 * After this returns any pending writes to the surface will be issued to th
e backend 3D API. |
114 */ | 114 */ |
115 void flushWrites(); | 115 void flushWrites(); |
116 | 116 |
(...skipping 23 matching lines...) Expand all Loading... |
140 SkImageInfo info(SkAlphaType) const; | 140 SkImageInfo info(SkAlphaType) const; |
141 bool savePixels(const char* filename); | 141 bool savePixels(const char* filename); |
142 bool hasPendingRead() const; | 142 bool hasPendingRead() const; |
143 bool hasPendingWrite() const; | 143 bool hasPendingWrite() const; |
144 bool hasPendingIO() const; | 144 bool hasPendingIO() const; |
145 | 145 |
146 // Provides access to methods that should be public within Skia code. | 146 // Provides access to methods that should be public within Skia code. |
147 friend class GrSurfacePriv; | 147 friend class GrSurfacePriv; |
148 | 148 |
149 GrSurface(GrGpu* gpu, LifeCycle lifeCycle, const GrSurfaceDesc& desc) | 149 GrSurface(GrGpu* gpu, LifeCycle lifeCycle, const GrSurfaceDesc& desc) |
150 : INHERITED(gpu, lifeCycle) | 150 : INHERITED(gpu, lifeCycle, GrGpuResource::kSurface) |
151 , fDesc(desc) | 151 , fDesc(desc) |
152 , fReleaseProc(NULL) | 152 , fReleaseProc(NULL) |
153 , fReleaseCtx(NULL) | 153 , fReleaseCtx(NULL) |
154 {} | 154 {} |
155 | 155 |
156 ~GrSurface() override { | 156 ~GrSurface() override { |
157 // check that invokeReleaseProc has been called (if needed) | 157 // check that invokeReleaseProc has been called (if needed) |
158 SkASSERT(NULL == fReleaseProc); | 158 SkASSERT(NULL == fReleaseProc); |
159 } | 159 } |
160 | 160 |
(...skipping 10 matching lines...) Expand all Loading... |
171 } | 171 } |
172 } | 172 } |
173 | 173 |
174 ReleaseProc fReleaseProc; | 174 ReleaseProc fReleaseProc; |
175 ReleaseCtx fReleaseCtx; | 175 ReleaseCtx fReleaseCtx; |
176 | 176 |
177 typedef GrGpuResource INHERITED; | 177 typedef GrGpuResource INHERITED; |
178 }; | 178 }; |
179 | 179 |
180 #endif | 180 #endif |
OLD | NEW |