Lines Matching refs:SkClipStack

12 #include "SkClipStack.h"
19 SkClipStack s;
50 SkClipStack copy = s;
116 static void assert_count(skiatest::Reporter* reporter, const SkClipStack& stack,
118 SkClipStack::B2TIter iter(stack);
126 // Exercise the SkClipStack's bottom to top and bidirectional iterators
129 SkClipStack stack;
147 const SkClipStack::Element* element = NULL;
149 SkClipStack::B2TIter iter(stack);
153 REPORTER_ASSERT(reporter, SkClipStack::Element::kRect_Type == element->getType());
162 const SkClipStack::Element* element = NULL;
164 SkClipStack::Iter iter(stack, SkClipStack::Iter::kTop_IterStart);
168 REPORTER_ASSERT(reporter, SkClipStack::Element::kRect_Type == element->getType());
177 const SkClipStack::Element* element = NULL;
179 SkClipStack::Iter iter(stack, SkClipStack::Iter::kBottom_IterStart);
182 REPORTER_ASSERT(reporter, SkClipStack::Element::kRect_Type == element->getType());
187 // Exercise the SkClipStack's getConservativeBounds computation
188 static void test_bounds(skiatest::Reporter* reporter, SkClipStack::Element::Type primType) {
242 SkClipStack stack;
247 int numBitTests = SkClipStack::Element::kPath_Type == primType ? 4 : 1;
261 case SkClipStack::Element::kEmpty_Type:
264 case SkClipStack::Element::kRect_Type:
268 case SkClipStack::Element::kRRect_Type:
272 case SkClipStack::Element::kPath_Type:
279 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID != stack.getTopmostGenID());
284 if (SkClipStack::Element::kRect_Type == primType) {
304 SkClipStack stack;
306 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID == stack.getTopmostGenID());
316 SkClipStack stack;
319 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID == stack.getTopmostGenID());
324 SkClipStack stack;
338 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID == stack.getTopmostGenID());
343 SkClipStack stack;
348 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID == stack.getTopmostGenID());
353 SkClipStack stack;
361 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID == stack.getTopmostGenID());
366 SkClipStack stack;
373 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID != stack.getTopmostGenID());
378 REPORTER_ASSERT(reporter, SkClipStack::kWideOpenGenID == stack.getTopmostGenID());
382 static int count(const SkClipStack& stack) {
384 SkClipStack::Iter iter(stack, SkClipStack::Iter::kTop_IterStart);
386 const SkClipStack::Element* element = NULL;
403 SkClipStack stack;
407 SkClipStack::BoundsType boundsType;
409 REPORTER_ASSERT(reporter, SkClipStack::kInsideOut_BoundsType == boundsType);
418 SkClipStack::BoundsType type;
424 SkClipStack stack;
435 SkClipStack stack;
446 SkClipStack stack;
458 SkClipStack stack;
496 SkClipStack stack;
506 SkClipStack stack;
514 // Test out SkClipStack's merging of rect clips. In particular exercise
525 SkClipStack::BoundsType type;
530 SkClipStack stack;
545 SkClipStack stack;
560 SkClipStack stack;
575 SkClipStack stack;
590 SkClipStack stack;
605 SkClipStack stack;
636 SkClipStack stack;
644 SkClipStack stack;
650 SkClipStack stack;
659 SkClipStack stack;
669 SkClipStack stack;
678 SkClipStack stack;
684 SkClipStack stack;
690 SkClipStack stack;
696 SkClipStack stack;
703 SkClipStack stack;
709 SkClipStack stack;
715 SkClipStack stack;
721 SkClipStack stack;
728 SkClipStack stack;
737 SkClipStack stack;
746 SkClipStack stack;
755 SkClipStack stack;
765 SkClipStack stack;
773 SkClipStack stack;
781 SkClipStack stack;
789 SkClipStack stack;
807 SkClipStack* stack);
809 static void add_round_rect(const SkRect& rect, bool invert, SkRegion::Op op, SkClipStack* stack) {
824 static void add_rect(const SkRect& rect, bool invert, SkRegion::Op op, SkClipStack* stack) {
835 static void add_oval(const SkRect& rect, bool invert, SkRegion::Op op, SkClipStack* stack) {
844 static void add_elem_to_stack(const SkClipStack::Element& element, SkClipStack* stack) {
846 case SkClipStack::Element::kRect_Type:
849 case SkClipStack::Element::kRRect_Type:
852 case SkClipStack::Element::kPath_Type:
855 case SkClipStack::Element::kEmpty_Type:
862 static void add_elem_to_region(const SkClipStack::Element& element,
870 case SkClipStack::Element::kEmpty_Type:
925 SkClipStack stack;
975 REPORTER_ASSERT(reporter, SkClipStack::kInvalidGenID != reducedGenID);
978 SkClipStack reducedStack;
997 const SkClipStack::Element* element;
998 SkClipStack::Iter iter(stack, SkClipStack::Iter::kBottom_IterStart);
1004 iter.reset(reducedStack, SkClipStack::Iter::kBottom_IterStart);
1022 SkClipStack stack;
1041 REPORTER_ASSERT(reporter, SkClipStack::kInvalidGenID != reducedGenID);
1044 SkClipStack stack;
1083 { XYWH(0, 0, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, XYWH(0, 0, 25, 25) },
1084 { XYWH(0, 0, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, unused },
1089 { XYWH(50, 0, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, XYWH(50, 0, 25, 25) },
1090 { XYWH(50, 0, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, unused },
1095 { XYWH(0, 50, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, XYWH(0, 50, 25, 25) },
1096 { XYWH(0, 50, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, unused },
1101 { XYWH(50, 50, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, unused },
1102 { XYWH(50, 50, 25, 25), 0, SkClipStack::kWideOpenGenID, GrReducedClip::kAllIn_InitialState, XYWH(50, 50, 25, 25)},
1111 { XYWH(26, 26, 24, 24), 0, SkClipStack::kEmptyGenID, GrReducedClip::kAllOut_InitialState, unused },
1112 { XYWH(26, 26, 24, 24), 0, SkClipStack::kEmptyGenID, GrReducedClip::kAllOut_InitialState, XYWH(26, 26, 24, 24) },
1149 SkClipStack stack;
1173 SkClipStack stack;
1189 SkClipStack::B2TIter iter(stack);
1190 const SkClipStack::Element* element = iter.next();
1195 REPORTER_ASSERT(reporter, SkClipStack::Element::kRect_Type == element->getType());
1207 test_bounds(reporter, SkClipStack::Element::kRect_Type);
1208 test_bounds(reporter, SkClipStack::Element::kRRect_Type);
1209 test_bounds(reporter, SkClipStack::Element::kPath_Type);