Index: skia/corecg/SkPageFlipper.cpp |
=================================================================== |
--- skia/corecg/SkPageFlipper.cpp (revision 16859) |
+++ skia/corecg/SkPageFlipper.cpp (working copy) |
@@ -1,85 +0,0 @@ |
-/* |
- * Copyright (C) 2008 The Android Open Source Project |
- * |
- * Licensed under the Apache License, Version 2.0 (the "License"); |
- * you may not use this file except in compliance with the License. |
- * You may obtain a copy of the License at |
- * |
- * http://www.apache.org/licenses/LICENSE-2.0 |
- * |
- * Unless required by applicable law or agreed to in writing, software |
- * distributed under the License is distributed on an "AS IS" BASIS, |
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
- * See the License for the specific language governing permissions and |
- * limitations under the License. |
- */ |
- |
-#include "SkPageFlipper.h" |
- |
-SkPageFlipper::SkPageFlipper() { |
- fWidth = 0; |
- fHeight = 0; |
- fDirty0 = &fDirty0Storage; |
- fDirty1 = &fDirty1Storage; |
- |
- fDirty0->setEmpty(); |
- fDirty1->setEmpty(); |
-} |
- |
-SkPageFlipper::SkPageFlipper(int width, int height) { |
- fWidth = width; |
- fHeight = height; |
- fDirty0 = &fDirty0Storage; |
- fDirty1 = &fDirty1Storage; |
- |
- fDirty0->setRect(0, 0, width, height); |
- fDirty1->setEmpty(); |
-} |
- |
-void SkPageFlipper::resize(int width, int height) { |
- fWidth = width; |
- fHeight = height; |
- |
- // this is the opposite of the constructors |
- fDirty1->setRect(0, 0, width, height); |
- fDirty0->setEmpty(); |
-} |
- |
-void SkPageFlipper::inval() { |
- fDirty1->setRect(0, 0, fWidth, fHeight); |
-} |
- |
-void SkPageFlipper::inval(const SkIRect& rect) { |
- SkIRect r; |
- r.set(0, 0, fWidth, fHeight); |
- if (r.intersect(rect)) { |
- fDirty1->op(r, SkRegion::kUnion_Op); |
- } |
-} |
- |
-void SkPageFlipper::inval(const SkRegion& rgn) { |
- SkRegion r; |
- r.setRect(0, 0, fWidth, fHeight); |
- if (r.op(rgn, SkRegion::kIntersect_Op)) { |
- fDirty1->op(r, SkRegion::kUnion_Op); |
- } |
-} |
- |
-void SkPageFlipper::inval(const SkRect& rect, bool antialias) { |
- SkIRect r; |
- rect.round(&r); |
- if (antialias) { |
- r.inset(-1, -1); |
- } |
- this->inval(r); |
-} |
- |
-const SkRegion& SkPageFlipper::update(SkRegion* copyBits) { |
- // Copy over anything new from page0 that isn't dirty in page1 |
- copyBits->op(*fDirty0, *fDirty1, SkRegion::kDifference_Op); |
- SkTSwap<SkRegion*>(fDirty0, fDirty1); |
- fDirty1->setEmpty(); |
- return *fDirty0; |
-} |
- |
- |