Lines Matching defs:coin

28 #define FAIL_IF(cond, coin) \
29 do { if (cond) log->record(SkPathOpsDebug::kFail_Glitch, coin); } while (false)
135 void record(GlitchType type, const SkCoincidentSpans* coin,
138 glitch->fCoinSpan = coin->coinPtTStart();
139 glitch->fEndSpan = coin->coinPtTEnd();
163 void record(GlitchType type, const SkCoincidentSpans* coin,
166 glitch->fCoinSpan = coin->coinPtTStart();
167 glitch->fEndSpan = coin->coinPtTEnd();
173 void record(GlitchType type, const SkCoincidentSpans* coin,
177 glitch->fCoinSpan = coin->coinPtTStart();
178 glitch->fEndSpan = coin->coinPtTEnd();
219 void record(GlitchType type, const SkCoincidentSpans* coin,
222 glitch->fCoinSpan = coin->coinPtTStart();
1613 const SkCoincidentSpans* coin = this->fHead;
1614 if (!coin) {
1618 const SkOpPtT* startPtT = coin->coinPtTStart();
1619 const SkOpPtT* oStartPtT = coin->oppPtTStart();
1622 FAIL_IF(!startPtT->contains(oStartPtT), coin);
1623 SkOPASSERT(coin->coinPtTEnd()->contains(coin->oppPtTEnd()));
1626 const SkOpSpanBase* end = coin->coinPtTEnd()->span();
1627 const SkOpSpanBase* oEnd = coin->oppPtTEnd()->span();
1628 FAIL_IF(oEnd->deleted(), coin);
1629 FAIL_IF(!start->upCastable(), coin);
1631 FAIL_IF(!coin->flipped() && !oStart->upCastable(), coin);
1632 const SkOpSpanBase* oTest = coin->flipped() ? oStart->prev() : oStart->upCast()->next();
1633 FAIL_IF(!oTest, coin);
1653 FAIL_IF(!walk->upCastable(), coin);
1656 && walk != coin->coinPtTEnd()->span());
1657 FAIL_IF(!walkOpp, coin);
1663 FAIL_IF(!startRange, coin);
1666 FAIL_IF(!oStartRange, coin);
1668 FAIL_IF(startPart == oStartPart, coin);
1676 // FAIL_IF(!success, coin);
1681 end = coin->coinPtTEnd()->span();
1682 oEnd = coin->oppPtTEnd()->span();
1685 FAIL_IF(!test->upCastable(), coin);
1691 oTest = coin->flipped() ? oTest->prev() : oTest->upCast()->next();
1692 FAIL_IF(!oTest, coin);
1695 } while ((coin = coin->next()));
1959 void SkOpCoincidence::debugRelease(SkPathOpsDebug::GlitchLog* log, const SkCoincidentSpans* coin, const SkCoincidentSpans* remove) const {
1960 const SkCoincidentSpans* head = coin;
1964 next = coin->next();
1965 if (coin == remove) {
1973 log->record(SkPathOpsDebug::kReleasedSpan_Glitch, coin);
1975 prev = coin;
1976 } while ((coin = next));
1981 const SkCoincidentSpans* coin = fHead;
1982 if (!coin) {
1986 if (coin->coinPtTStart()->segment() == deleted
1987 || coin->coinPtTEnd()->segment() == deleted
1988 || coin->oppPtTStart()->segment() == deleted
1989 || coin->oppPtTEnd()->segment() == deleted) {
1990 log->record(SkPathOpsDebug::kReleasedSpan_Glitch, coin);
1992 } while ((coin = coin->next()));
1998 const SkCoincidentSpans* coin = fHead;
1999 if (!coin) {
2004 if (coin->debugExpand(log)) {
2008 if (coin == test) {
2011 if (coin->coinPtTStart() == test->coinPtTStart()
2012 && coin->oppPtTStart() == test->oppPtTStart()) {
2019 } while ((coin = coin->next()));
2026 const SkCoincidentSpans* coin = fHead;
2027 if (!coin) {
2031 FAIL_IF(!coin->coinPtTStartWritable()->span()->upCastable(), coin);
2032 const SkOpSpan* start = coin->coinPtTStartWritable()->span()->upCast();
2034 const SkOpSpanBase* end = coin->coinPtTEndWritable()->span();
2036 const SkOpSpanBase* oStart = coin->oppPtTStartWritable()->span();
2038 const SkOpSpanBase* oEnd = coin->oppPtTEndWritable()->span();
2040 bool flipped = coin->flipped();
2045 /* coin and opp spans may not match up. Mark the ends, and then let the interior
2054 FAIL_IF(!coin->ordered(&ordered), coin);
2056 FAIL_IF(!next->upCastable(), coin);
2062 FAIL_IF(!oNext->upCastable(), coin);
2067 } while ((coin = coin->next()));
2074 void SkOpCoincidence::debugMarkCollapsed(SkPathOpsDebug::GlitchLog* log, const SkCoincidentSpans* coin, const SkOpPtT* test) const {
2075 const SkCoincidentSpans* head = coin;
2076 while (coin) {
2077 if (coin->collapsed(test)) {
2078 if (zero_or_one(coin->coinPtTStart()->fT) && zero_or_one(coin->coinPtTEnd()->fT)) {
2079 log->record(SkPathOpsDebug::kCollapsedCoin_Glitch, coin);
2081 if (zero_or_one(coin->oppPtTStart()->fT) && zero_or_one(coin->oppPtTEnd()->fT)) {
2082 log->record(SkPathOpsDebug::kCollapsedCoin_Glitch, coin);
2084 this->debugRelease(log, head, coin);
2086 coin = coin->next();
2232 const SkCoincidentSpans* coin = head;
2233 while (coin) {
2234 SkASSERT(SkOpCoincidence::Ordered(coin->coinPtTStart()->segment(),
2235 coin->oppPtTStart()->segment()));
2236 SkASSERT(coin->coinPtTStart()->span()->ptT() == coin->coinPtTStart());
2237 SkASSERT(coin->coinPtTEnd()->span()->ptT() == coin->coinPtTEnd());
2238 SkASSERT(coin->oppPtTStart()->span()->ptT() == coin->oppPtTStart());
2239 SkASSERT(coin->oppPtTEnd()->span()->ptT() == coin->oppPtTEnd());
2240 coin = coin->next();
2257 const SkCoincidentSpans* coin = head;
2258 while (coin) {
2259 DebugCheckBetween(coin->coinPtTStart()->span(), coin->coinPtTEnd()->span(),
2260 coin->oppPtTStart()->fT, coin->oppPtTEnd()->fT, coin->oppPtTStart()->segment(),
2262 DebugCheckBetween(coin->oppPtTStart()->span(), coin->oppPtTEnd()->span(),
2263 coin->coinPtTStart()->fT, coin->coinPtTEnd()->fT, coin->coinPtTStart()->segment(),
2265 coin = coin->next();
2297 const SkCoincidentSpans* coin = fHead;
2298 if (!coin) {
2302 coin->debugCorrectEnds(log);
2303 } while ((coin = coin->next()));
2456 void SkOpSpanBase::debugInsertCoinEnd(SkPathOpsDebug::GlitchLog* log, const SkOpSpanBase* coin) const {
2457 if (containsCoinEnd(coin)) {
2458 // SkASSERT(coin->containsCoinEnd(this));
2462 // SkASSERT(this != coin);
2463 log->record(SkPathOpsDebug::kMarkCoinEnd_Glitch, this, coin);
2464 // coin->fCoinEnd = this->fCoinEnd;
2627 void SkOpSpan::debugInsertCoincidence(SkPathOpsDebug::GlitchLog* log, const SkOpSpan* coin) const {
2628 if (containsCoincidence(coin)) {
2629 // SkASSERT(coin->containsCoincidence(this));
2633 // SkASSERT(this != coin);
2634 log->record(SkPathOpsDebug::kMarkCoinStart_Glitch, this, coin);
2635 // coin->fCoincident = this->fCoincident;