Flutter Engine
The Flutter Engine
|
#include <GrMeshDrawTarget.h>
Public Member Functions | |
virtual | ~GrMeshDrawTarget () |
virtual void | recordDraw (const GrGeometryProcessor *, const GrSimpleMesh[], int meshCnt, const GrSurfaceProxy *const primProcProxies[], GrPrimitiveType)=0 |
void | recordDraw (const GrGeometryProcessor *gp, const GrSimpleMesh meshes[], int meshCnt, GrPrimitiveType primitiveType) |
virtual void * | makeVertexSpace (size_t vertexSize, int vertexCount, sk_sp< const GrBuffer > *, int *startVertex)=0 |
virtual uint16_t * | makeIndexSpace (int indexCount, sk_sp< const GrBuffer > *, int *startIndex)=0 |
virtual void * | makeVertexSpaceAtLeast (size_t vertexSize, int minVertexCount, int fallbackVertexCount, sk_sp< const GrBuffer > *, int *startVertex, int *actualVertexCount)=0 |
virtual uint16_t * | makeIndexSpaceAtLeast (int minIndexCount, int fallbackIndexCount, sk_sp< const GrBuffer > *, int *startIndex, int *actualIndexCount)=0 |
virtual GrDrawIndirectWriter | makeDrawIndirectSpace (int drawCount, sk_sp< const GrBuffer > *buffer, size_t *offsetInBytes)=0 |
virtual GrDrawIndexedIndirectWriter | makeDrawIndexedIndirectSpace (int drawCount, sk_sp< const GrBuffer > *, size_t *offsetInBytes)=0 |
skgpu::VertexWriter | makeVertexWriter (size_t vertexSize, int vertexCount, sk_sp< const GrBuffer > *, int *startVertex) |
skgpu::IndexWriter | makeIndexWriter (int indexCount, sk_sp< const GrBuffer > *, int *startIndex) |
skgpu::VertexWriter | makeVertexWriterAtLeast (size_t vertexSize, int minVertexCount, int fallbackVertexCount, sk_sp< const GrBuffer > *, int *startVertex, int *actualVertexCount) |
skgpu::IndexWriter | makeIndexWriterAtLeast (int minIndexCount, int fallbackIndexCount, sk_sp< const GrBuffer > *, int *startIndex, int *actualIndexCount) |
virtual void | putBackIndices (int indices)=0 |
virtual void | putBackVertices (int vertices, size_t vertexStride)=0 |
virtual void | putBackIndirectDraws (int count)=0 |
virtual void | putBackIndexedIndirectDraws (int count)=0 |
GrSimpleMesh * | allocMesh () |
GrSimpleMesh * | allocMeshes (int n) |
const GrSurfaceProxy ** | allocPrimProcProxyPtrs (int n) |
virtual GrRenderTargetProxy * | rtProxy () const =0 |
virtual const GrSurfaceProxyView & | writeView () const =0 |
virtual const GrAppliedClip * | appliedClip () const =0 |
virtual GrAppliedClip | detachAppliedClip ()=0 |
virtual const GrDstProxyView & | dstProxyView () const =0 |
virtual bool | usesMSAASurface () const =0 |
virtual GrXferBarrierFlags | renderPassBarriers () const =0 |
virtual GrLoadOp | colorLoadOp () const =0 |
virtual GrThreadSafeCache * | threadSafeCache () const =0 |
virtual GrResourceProvider * | resourceProvider () const =0 |
uint32_t | contextUniqueID () const |
virtual sktext::gpu::StrikeCache * | strikeCache () const =0 |
virtual GrAtlasManager * | atlasManager () const =0 |
virtual skgpu::ganesh::SmallPathAtlasMgr * | smallPathAtlasManager () const =0 |
virtual skia_private::TArray< GrSurfaceProxy *, true > * | sampledProxyArray ()=0 |
virtual const GrCaps & | caps () const =0 |
virtual GrDeferredUploadTarget * | deferredUploadTarget ()=0 |
virtual SkArenaAlloc * | allocator ()=0 |
Definition at line 53 of file GrMeshDrawTarget.h.
|
inlinevirtual |
Definition at line 55 of file GrMeshDrawTarget.h.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
inline |
Definition at line 143 of file GrMeshDrawTarget.h.
|
inline |
Definition at line 144 of file GrMeshDrawTarget.h.
|
inline |
Definition at line 145 of file GrMeshDrawTarget.h.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
uint32_t GrMeshDrawTarget::contextUniqueID | ( | ) | const |
Definition at line 13 of file GrMeshDrawTarget.cpp.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Makes space for elements in a draw-indexed-indirect buffer. Upon success, the returned pointer is a CPU mapping where the data should be written.
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Makes space for elements in a draw-indirect buffer. Upon success, the returned pointer is a CPU mapping where the data should be written.
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Makes space for index data. The returned pointer is the location where index data should be written. On return the buffer that will hold the data as well as an offset into the buffer (in uint16_t units) where the data will be placed.
Implemented in GrOpFlushState.
|
pure virtual |
This is similar to makeIndexSpace. It allows the caller to use up to 'actualIndexCount' indices in the returned pointer, which may exceed 'minIndexCount'. 'fallbackIndexCount' is the maximum number of indices that should be allocated if a new buffer is allocated on behalf of this request.
Implemented in GrOpFlushState.
skgpu::IndexWriter GrMeshDrawTarget::makeIndexWriter | ( | int | indexCount, |
sk_sp< const GrBuffer > * | buffer, | ||
int * | startIndex | ||
) |
Definition at line 30 of file GrMeshDrawTarget.cpp.
skgpu::IndexWriter GrMeshDrawTarget::makeIndexWriterAtLeast | ( | int | minIndexCount, |
int | fallbackIndexCount, | ||
sk_sp< const GrBuffer > * | buffer, | ||
int * | startIndex, | ||
int * | actualIndexCount | ||
) |
Definition at line 44 of file GrMeshDrawTarget.cpp.
|
pure virtual |
Makes space for vertex data. The returned pointer is the location where vertex data should be written. On return the buffer that will hold the data as well as an offset into the buffer (in 'vertexSize' units) where the data will be placed.
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
This is similar to makeVertexSpace. It allows the caller to use up to 'actualVertexCount' vertices in the returned pointer, which may exceed 'minVertexCount'. 'fallbackVertexCount' is the maximum number of vertices that should be allocated if a new buffer is allocated on behalf of this request.
Implemented in GrOpFlushState, and GrMockOpTarget.
skgpu::VertexWriter GrMeshDrawTarget::makeVertexWriter | ( | size_t | vertexSize, |
int | vertexCount, | ||
sk_sp< const GrBuffer > * | buffer, | ||
int * | startVertex | ||
) |
Helpers for ops that only need to use the VertexWriter to fill the data directly.
Definition at line 24 of file GrMeshDrawTarget.cpp.
skgpu::VertexWriter GrMeshDrawTarget::makeVertexWriterAtLeast | ( | size_t | vertexSize, |
int | minVertexCount, | ||
int | fallbackVertexCount, | ||
sk_sp< const GrBuffer > * | buffer, | ||
int * | startVertex, | ||
int * | actualVertexCount | ||
) |
Definition at line 36 of file GrMeshDrawTarget.cpp.
|
pure virtual |
Implemented in GrMockOpTarget, and GrOpFlushState.
|
pure virtual |
Helpers for ops which over-allocate and then return excess data to the pool.
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrMockOpTarget, and GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Adds a draw of a mesh. 'primProcProxies' must have GrGeometryProcessor::numTextureSamplers() entries. Can be null if no samplers.
Implemented in GrOpFlushState.
|
inline |
Helper for drawing GrSimpleMesh(es) with zero primProc textures.
Definition at line 69 of file GrMeshDrawTarget.h.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState, and GrMockOpTarget.
|
pure virtual |
Implemented in GrOpFlushState.
|
pure virtual |
Implemented in GrOpFlushState.