Lines Matching defs:state

141 static void setup_MC_state(SkMCState* state, const SkMatrix& matrix, const SkIRect& clip) {
143 state->clipRectCount = 0;
147 state->matrix[i] = matrix.get(i);
157 state->clipRectCount = 1;
158 state->clipRects = (ClipRect*)sk_malloc_throw(sizeof(ClipRect));
159 state->clipRects->left = clip.fLeft;
160 state->clipRects->top = clip.fTop;
161 state->clipRects->right = clip.fRight;
162 state->clipRects->bottom = clip.fBottom;
178 // Historically, the canvas state could report multiple top-level layers because SkCanvas
231 static void setup_canvas_from_MC_state(const SkMCState& state, SkCanvas* canvas) {
235 matrix.set(i, state.matrix[i]);
241 if (state.clipRectCount > 0) {
242 bounds.setLTRB(state.clipRects[0].left,
243 state.clipRects[0].top,
244 state.clipRects[0].right,
245 state.clipRects[0].bottom);
246 for (int i = 1; i < state.clipRectCount; ++i) {
247 bounds.join({state.clipRects[i].left,
248 state.clipRects[i].top,
249 state.clipRects[i].right,
250 state.clipRects[i].bottom});
287 std::unique_ptr<SkCanvas> SkCanvasStateUtils::MakeFromCanvasState(const SkCanvasState* state) {
288 SkASSERT(state);
290 SkASSERT(SkCanvasState_v1::kVersion == state->version);
292 const SkCanvasState_v1* state_v1 = static_cast<const SkCanvasState_v1*>(state);
298 std::unique_ptr<SkCanvasStack> canvas(new SkCanvasStack(state->width, state->height));
320 void SkCanvasStateUtils::ReleaseCanvasState(SkCanvasState* state) {
321 SkASSERT(!state || SkCanvasState_v1::kVersion == state->version);
325 delete static_cast<SkCanvasState_v1*>(state);