Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
GrGLOpsRenderPass Class Reference

#include <GrGLOpsRenderPass.h>

Inheritance diagram for GrGLOpsRenderPass:
GrOpsRenderPass

Public Member Functions

 GrGLOpsRenderPass (GrGLGpu *gpu)
 
void inlineUpload (GrOpFlushState *state, GrDeferredTextureUploadFn &upload) override
 
void set (GrRenderTarget *, bool useMSAASurface, const SkIRect &contentBounds, GrSurfaceOrigin, const LoadAndStoreInfo &, const StencilLoadAndStoreInfo &)
 
void reset ()
 
- Public Member Functions inherited from GrOpsRenderPass
virtual ~GrOpsRenderPass ()
 
void begin ()
 
void end ()
 
void bindPipeline (const GrProgramInfo &, const SkRect &drawBounds)
 
void setScissorRect (const SkIRect &)
 
void bindTextures (const GrGeometryProcessor &, const GrSurfaceProxy *const geomProcTextures[], const GrPipeline &)
 
void bindBuffers (sk_sp< const GrBuffer > indexBuffer, sk_sp< const GrBuffer > instanceBuffer, sk_sp< const GrBuffer > vertexBuffer, GrPrimitiveRestart=GrPrimitiveRestart::kNo)
 
void draw (int vertexCount, int baseVertex)
 
void drawIndexed (int indexCount, int baseIndex, uint16_t minIndexValue, uint16_t maxIndexValue, int baseVertex)
 
void drawInstanced (int instanceCount, int baseInstance, int vertexCount, int baseVertex)
 
void drawIndexedInstanced (int indexCount, int baseIndex, int instanceCount, int baseInstance, int baseVertex)
 
void drawIndirect (const GrBuffer *drawIndirectBuffer, size_t bufferOffset, int drawCount)
 
void drawIndexedIndirect (const GrBuffer *drawIndirectBuffer, size_t bufferOffset, int drawCount)
 
void drawIndexPattern (int patternIndexCount, int patternRepeatCount, int maxPatternRepetitionsInIndexBuffer, int patternVertexCount, int baseVertex)
 
virtual void inlineUpload (GrOpFlushState *, GrDeferredTextureUploadFn &)=0
 
void clear (const GrScissorState &scissor, std::array< float, 4 > color)
 
void clearStencilClip (const GrScissorState &scissor, bool insideStencilMask)
 
void executeDrawable (std::unique_ptr< SkDrawable::GpuDrawHandler >)
 

Additional Inherited Members

- Protected Member Functions inherited from GrOpsRenderPass
 GrOpsRenderPass ()
 
 GrOpsRenderPass (GrRenderTarget *rt, GrSurfaceOrigin origin)
 
void set (GrRenderTarget *rt, GrSurfaceOrigin origin)
 
- Protected Attributes inherited from GrOpsRenderPass
GrSurfaceOrigin fOrigin
 
GrRenderTargetfRenderTarget
 
sk_sp< const GrBufferfActiveIndexBuffer
 
sk_sp< const GrBufferfActiveVertexBuffer
 
sk_sp< const GrBufferfActiveInstanceBuffer
 

Detailed Description

Definition at line 20 of file GrGLOpsRenderPass.h.

Constructor & Destructor Documentation

◆ GrGLOpsRenderPass()

GrGLOpsRenderPass::GrGLOpsRenderPass ( GrGLGpu gpu)
inline

We do not actually buffer up draws or do any work in the this class for GL. Instead commands are immediately sent to the gpu to execute. Thus all the commands in this class are simply pass through functions to corresponding calls in the GrGLGpu class.

Definition at line 27 of file GrGLOpsRenderPass.h.

27: fGpu(gpu) {}

Member Function Documentation

◆ inlineUpload()

void GrGLOpsRenderPass::inlineUpload ( GrOpFlushState state,
GrDeferredTextureUploadFn upload 
)
inlineoverridevirtual

Implements GrOpsRenderPass.

Definition at line 29 of file GrGLOpsRenderPass.h.

29 {
30 state->doUpload(upload);
31 }
AtkStateType state
Definition: upload.py:1

◆ reset()

void GrGLOpsRenderPass::reset ( )
inline

Definition at line 36 of file GrGLOpsRenderPass.h.

36 {
37 fRenderTarget = nullptr;
38 }
GrRenderTarget * fRenderTarget

◆ set()

void GrGLOpsRenderPass::set ( GrRenderTarget rt,
bool  useMSAASurface,
const SkIRect contentBounds,
GrSurfaceOrigin  origin,
const LoadAndStoreInfo colorInfo,
const StencilLoadAndStoreInfo stencilInfo 
)

Definition at line 21 of file GrGLOpsRenderPass.cpp.

23 {
24 SkASSERT(fGpu);
26 SkASSERT(fGpu == rt->getContext()->priv().getGpu());
27
28 this->INHERITED::set(rt, origin);
29 fUseMultisampleFBO = useMSAASurface;
30 fContentBounds = contentBounds;
31 fColorLoadAndStoreInfo = colorInfo;
32 fStencilLoadAndStoreInfo = stencilInfo;
33}
#define SkASSERT(cond)
Definition: SkAssert.h:116
GrDirectContextPriv priv()
const GrDirectContext * getContext() const
void set(GrRenderTarget *rt, GrSurfaceOrigin origin)

The documentation for this class was generated from the following files: