8#ifndef GrDrawIndirectCommand_DEFINED
9#define GrDrawIndirectCommand_DEFINED
32 "GrDrawIndexedIndirectCommand must be tightly packed");
55 explicit operator bool()
const {
return fData !=
nullptr; }
59 inline void write(uint32_t instanceCount, uint32_t baseInstance, uint32_t vertexCount,
61 *fData++ = {vertexCount, instanceCount, baseVertex, baseInstance};
90 explicit operator bool()
const {
return fData !=
nullptr; }
94 inline void writeIndexed(uint32_t indexCount, uint32_t baseIndex, uint32_t instanceCount,
95 uint32_t baseInstance, int32_t baseVertex) {
96 *fData++ = {indexCount, instanceCount, baseIndex, baseVertex, baseInstance};
GrDrawIndexedIndirectWriter(const GrDrawIndexedIndirectWriter &)=delete
GrDrawIndexedIndirectWriter & operator=(const GrDrawIndexedIndirectWriter &)=delete
GrDrawIndexedIndirectWriter(GrDrawIndexedIndirectWriter &&that)
GrDrawIndexedIndirectWriter()=default
void writeIndexed(uint32_t indexCount, uint32_t baseIndex, uint32_t instanceCount, uint32_t baseInstance, int32_t baseVertex)
GrDrawIndexedIndirectWriter & operator=(GrDrawIndexedIndirectWriter &&that)
GrDrawIndexedIndirectWriter makeOffset(int drawCount) const
bool operator==(const GrDrawIndexedIndirectWriter &that)
GrDrawIndexedIndirectWriter(void *data)
GrDrawIndirectWriter & operator=(GrDrawIndirectWriter &&that)
GrDrawIndirectWriter(GrDrawIndirectWriter &&that)
void write(uint32_t instanceCount, uint32_t baseInstance, uint32_t vertexCount, int32_t baseVertex)
bool operator==(const GrDrawIndirectWriter &that)
GrDrawIndirectWriter(const GrDrawIndirectWriter &)=delete
GrDrawIndirectWriter makeOffset(int drawCount) const
GrDrawIndirectWriter(void *data)
GrDrawIndirectWriter()=default
GrDrawIndirectWriter & operator=(const GrDrawIndirectWriter &)=delete
std::shared_ptr< const fml::Mapping > data