aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-10-02 17:49:50 +0000
committerGravatar robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-10-02 17:49:50 +0000
commitaaf3e64b2c867dff1b750cebdeff9e57784b8f22 (patch)
tree4c57a507c5a535ead79a67c0056c07986d8a5b0d /src
parent09846a05be093b610c91f7ff70610811ff3ee0f6 (diff)
Move makeSpace and resetToSize from SkPathRef.cpp to .h
Diffstat (limited to 'src')
-rw-r--r--src/core/SkPathRef.cpp63
1 files changed, 0 insertions, 63 deletions
diff --git a/src/core/SkPathRef.cpp b/src/core/SkPathRef.cpp
index 08cc4cb08e..92e13cab9d 100644
--- a/src/core/SkPathRef.cpp
+++ b/src/core/SkPathRef.cpp
@@ -236,38 +236,6 @@ void SkPathRef::copy(const SkPathRef& ref,
SkDEBUGCODE(this->validate();)
}
-void SkPathRef::resetToSize(int verbCount, int pointCount, int conicCount,
- int reserveVerbs, int reservePoints) {
- SkDEBUGCODE(this->validate();)
- fBoundsIsDirty = true; // this also invalidates fIsFinite
- fGenerationID = 0;
-
- size_t newSize = sizeof(uint8_t) * verbCount + sizeof(SkPoint) * pointCount;
- size_t newReserve = sizeof(uint8_t) * reserveVerbs + sizeof(SkPoint) * reservePoints;
- size_t minSize = newSize + newReserve;
-
- ptrdiff_t sizeDelta = this->currSize() - minSize;
-
- if (sizeDelta < 0 || static_cast<size_t>(sizeDelta) >= 3 * minSize) {
- sk_free(fPoints);
- fPoints = NULL;
- fVerbs = NULL;
- fFreeSpace = 0;
- fVerbCnt = 0;
- fPointCnt = 0;
- this->makeSpace(minSize);
- fVerbCnt = verbCount;
- fPointCnt = pointCount;
- fFreeSpace -= newSize;
- } else {
- fPointCnt = pointCount;
- fVerbCnt = verbCount;
- fFreeSpace = this->currSize() - minSize;
- }
- fConicWeights.setCount(conicCount);
- SkDEBUGCODE(this->validate();)
-}
-
SkPoint* SkPathRef::growForVerb(int /* SkPath::Verb*/ verb) {
SkDEBUGCODE(this->validate();)
int pCnt;
@@ -308,37 +276,6 @@ SkPoint* SkPathRef::growForVerb(int /* SkPath::Verb*/ verb) {
return ret;
}
-void SkPathRef::makeSpace(size_t size) {
- SkDEBUGCODE(this->validate();)
- ptrdiff_t growSize = size - fFreeSpace;
- if (growSize <= 0) {
- return;
- }
- size_t oldSize = this->currSize();
- // round to next multiple of 8 bytes
- growSize = (growSize + 7) & ~static_cast<size_t>(7);
- // we always at least double the allocation
- if (static_cast<size_t>(growSize) < oldSize) {
- growSize = oldSize;
- }
- if (growSize < kMinSize) {
- growSize = kMinSize;
- }
- size_t newSize = oldSize + growSize;
- // Note that realloc could memcpy more than we need. It seems to be a win anyway. TODO:
- // encapsulate this.
- fPoints = reinterpret_cast<SkPoint*>(sk_realloc_throw(fPoints, newSize));
- size_t oldVerbSize = fVerbCnt * sizeof(uint8_t);
- void* newVerbsDst = reinterpret_cast<void*>(
- reinterpret_cast<intptr_t>(fPoints) + newSize - oldVerbSize);
- void* oldVerbsSrc = reinterpret_cast<void*>(
- reinterpret_cast<intptr_t>(fPoints) + oldSize - oldVerbSize);
- memmove(newVerbsDst, oldVerbsSrc, oldVerbSize);
- fVerbs = reinterpret_cast<uint8_t*>(reinterpret_cast<intptr_t>(fPoints) + newSize);
- fFreeSpace += growSize;
- SkDEBUGCODE(this->validate();)
-}
-
int32_t SkPathRef::genID() const {
SkASSERT(!fEditorsAttached);
if (!fGenerationID) {