Lines Matching refs:metadata

20         // Pre-allocate space for 1 2D device-space quad, metadata, and header
36 // The number of device-space quads (and metadata, and optional local quads) that are in the
47 // Append the given 'deviceQuad' to this buffer, with its associated 'metadata'. If 'localQuad'
52 void append(const GrQuad& deviceQuad, T&& metadata, const GrQuad* localQuad = nullptr);
57 // Provides a read-only iterator over a quad buffer, giving access to the device quad, metadata
72 const T& metadata() const { this->validate(); return *(fBuffer->metadata(fCurrentEntry)); }
97 // The pointer to the current entry to read metadata/header details from
112 // Provides a *mutable* iterator over just the metadata stored in the quad buffer. This skips
125 T& operator*() { this->validate(); return *(fBuffer->metadata(fCurrentEntry)); }
127 T* operator->() { this->validate(); return fBuffer->metadata(fCurrentEntry); }
140 MetadataIter metadata() { return MetadataIter(this); }
158 // optional local coordinates, and metadata. An entry always has a header that defines the
159 // quad types of device and local coordinates, and always has metadata of type T. The device
162 // [ metadata ] = sizeof(T), assert alignof(T) == 4 so that pointer casts are valid
174 int fCount; // Number of (device, local, metadata) entries
205 inline T* metadata(char* entry) {
208 inline const T* metadata(const char* entry) const {
265 void GrQuadBuffer<T>::append(const GrQuad& deviceQuad, T&& metadata, const GrQuad* localQuad) {
279 // Second, the fixed-size metadata
281 *(this->metadata(entry)) = std::move(metadata);
337 // There is at least one more entry, so store the current start for metadata access