8#ifndef GrGLOpsRenderPass_DEFINED
9#define GrGLOpsRenderPass_DEFINED
34 const LoadAndStoreInfo&,
const StencilLoadAndStoreInfo&);
43 void bindInstanceBuffer(
const GrBuffer*,
int baseInstance);
44 void bindVertexBuffer(
const GrBuffer*,
int baseVertex);
46 const void* offsetForBaseIndex(
int baseIndex)
const {
49 return (
void*)(baseIndex *
sizeof(uint16_t));
51 return fIndexPointer + baseIndex;
61 void onEnd()
override;
69 void onDraw(
int vertexCount,
int baseVertex)
override;
70 void onDrawIndexed(
int indexCount,
int baseIndex, uint16_t minIndexValue,
71 uint16_t maxIndexValue,
int baseVertex)
override;
72 void onDrawInstanced(
int instanceCount,
int baseInstance,
int vertexCount,
73 int baseVertex)
override;
75 int baseVertex)
override;
77 void multiDrawArraysANGLEOrWebGL(
const GrBuffer* drawIndirectBuffer,
size_t offset,
80 int drawCount)
override;
81 void multiDrawElementsANGLEOrWebGL(
const GrBuffer* drawIndirectBuffer,
size_t offset,
88 bool fUseMultisampleFBO;
90 LoadAndStoreInfo fColorLoadAndStoreInfo;
91 StencilLoadAndStoreInfo fStencilLoadAndStoreInfo;
99 const uint16_t* fIndexPointer;
std::function< void(GrDeferredTextureUploadWritePixelsFn &)> GrDeferredTextureUploadFn
void onSetScissorRect(const SkIRect &scissor) override
void onBindBuffers(sk_sp< const GrBuffer > indexBuffer, sk_sp< const GrBuffer > instanceBuffer, sk_sp< const GrBuffer > vertexBuffer, GrPrimitiveRestart) override
void onDrawIndexed(int indexCount, int baseIndex, uint16_t minIndexValue, uint16_t maxIndexValue, int baseVertex) override
GrGLOpsRenderPass(GrGLGpu *gpu)
void onDrawIndexedIndirect(const GrBuffer *drawIndirectBuffer, size_t offset, int drawCount) override
void onDrawIndexedInstanced(int indexCount, int baseIndex, int instanceCount, int baseInstance, int baseVertex) override
bool onBindPipeline(const GrProgramInfo &programInfo, const SkRect &drawBounds) override
void onDrawIndirect(const GrBuffer *drawIndirectBuffer, size_t offset, int drawCount) override
void inlineUpload(GrOpFlushState *state, GrDeferredTextureUploadFn &upload) override
void onDrawInstanced(int instanceCount, int baseInstance, int vertexCount, int baseVertex) override
bool onBindTextures(const GrGeometryProcessor &, const GrSurfaceProxy *const geomProcTextures[], const GrPipeline &) override
void onDraw(int vertexCount, int baseVertex) override
void onClear(const GrScissorState &scissor, std::array< float, 4 > color) override
void onClearStencilClip(const GrScissorState &scissor, bool insideStencilMask) override
GrRenderTarget * fRenderTarget