137 {
138 static const int kQuadCount = 2;
141 static_assert(std::size(kTypesA) == kQuadCount, "quadsA count");
142 static_assert(std::size(kTypesB) == kQuadCount, "quadsB count");
143
144 std::vector<GrQuad> quadsA =
generate_quads(1.f, kQuadCount, kTypesA);
145 std::vector<GrQuad> quadsB =
generate_quads(2.f, kQuadCount, kTypesB);
146
147
148
151 for (int i = 0; i < kQuadCount; ++i) {
152 buffer1.
append(quadsA[i], {i, 2.f * i}, i % 2 == 0 ? &quadsB[i] :
nullptr);
153 buffer2.
append(quadsB[i], {2 * i, 0.5f * i}, i % 2 == 0 ? nullptr : &quadsA[i]);
154 }
155
158
159
161
163 int i = 0;
165 while(iter.next()) {
166 if (i < kQuadCount) {
167
170 if (i % 2 == 0) {
171 ASSERT(iter.isLocalValid());
173 } else {
174 ASSERT(!iter.isLocalValid());
175 ASSERT(!iter.localQuad());
176 }
177
178 } else {
179
180 int j = i - kQuadCount;
183 if (j % 2 == 0) {
184 ASSERT(!iter.isLocalValid());
185 ASSERT(!iter.localQuad());
186 } else {
187 ASSERT(iter.isLocalValid());
189 }
190 }
191
192 i++;
193 }
194 ASSERTF(i == 2 * kQuadCount,
"Expected %d iterations, got: %d",2 * kQuadCount, i);
195}
void concat(const GrQuadBuffer< T > &that)