diff options
author | caryclark <caryclark@google.com> | 2015-03-24 07:28:17 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-03-24 07:28:17 -0700 |
commit | ccec0f958ffc71a9986d236bc2eb335cb2111119 (patch) | |
tree | f864209e3594293256ac391715d50222ff22d96b /src/pathops/SkPathOpsCommon.h | |
parent | 62a320c8d444cd04e4f2952c269ea4cbd58dee64 (diff) |
pathops version two
R=reed@google.com
marked 'no commit' to attempt to get trybots to run
TBR=reed@google.com
Review URL: https://codereview.chromium.org/1002693002
Diffstat (limited to 'src/pathops/SkPathOpsCommon.h')
-rw-r--r-- | src/pathops/SkPathOpsCommon.h | 26 |
1 files changed, 15 insertions, 11 deletions
diff --git a/src/pathops/SkPathOpsCommon.h b/src/pathops/SkPathOpsCommon.h index 0d8cfc42f9..1bf17919ad 100644 --- a/src/pathops/SkPathOpsCommon.h +++ b/src/pathops/SkPathOpsCommon.h @@ -8,24 +8,28 @@ #define SkPathOpsCommon_DEFINED #include "SkOpAngle.h" -#include "SkOpContour.h" #include "SkTDArray.h" +class SkOpCoincidence; +class SkOpContour; class SkPathWriter; void Assemble(const SkPathWriter& path, SkPathWriter* simple); -// FIXME: find chase uses insert, so it can't be converted to SkTArray yet -SkOpSegment* FindChase(SkTDArray<SkOpSpan*>* chase, int* tIndex, int* endIndex); -SkOpSegment* FindSortableTop(const SkTArray<SkOpContour*, true>& , SkOpAngle::IncludeType , - bool* firstContour, int* index, int* endIndex, SkPoint* topLeft, - bool* unsortable, bool* done, bool* onlyVertical, bool firstPass); -SkOpSegment* FindUndone(SkTArray<SkOpContour*, true>& contourList, int* start, int* end); -void MakeContourList(SkTArray<SkOpContour>& contours, SkTArray<SkOpContour*, true>& list, +SkOpSegment* FindChase(SkTDArray<SkOpSpanBase*>* chase, SkOpSpanBase** startPtr, + SkOpSpanBase** endPtr); +SkOpSegment* FindSortableTop(const SkTDArray<SkOpContour*>& , bool firstPass, + SkOpAngle::IncludeType , bool* firstContour, SkOpSpanBase** index, + SkOpSpanBase** endIndex, SkPoint* topLeft, bool* unsortable, + bool* done, bool* onlyVertical, SkChunkAlloc* ); +SkOpSegment* FindUndone(SkTDArray<SkOpContour*>& contourList, SkOpSpanBase** startPtr, + SkOpSpanBase** endPtr); +void MakeContourList(SkOpContour* , SkTDArray<SkOpContour*>& list, bool evenOdd, bool oppEvenOdd); -bool HandleCoincidence(SkTArray<SkOpContour*, true>* , int ); +bool HandleCoincidence(SkTDArray<SkOpContour*>* , SkOpCoincidence* , SkChunkAlloc* , + SkOpGlobalState* ); -#if DEBUG_ACTIVE_SPANS || DEBUG_ACTIVE_SPANS_FIRST_ONLY -void DebugShowActiveSpans(SkTArray<SkOpContour*, true>& contourList); +#if DEBUG_ACTIVE_SPANS +void DebugShowActiveSpans(SkTDArray<SkOpContour*>& contourList); #endif #endif |