Commit 34148207 by Jamie Madill Committed by Commit Bot

Capture/Replay: Encapsulate cpp replay.

This moves the cpp replay logic out of the FrameCapture class into pure c helper functions. This is a bit cleaner and could help us eventually move to writing out the cpp replay on a worker thread. Bug: angleproject:3611 Change-Id: I6a96c1ef1595a6203d44c1d4d9d793205701dd24 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1804879 Commit-Queue: Jamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarCody Northrop <cnorthrop@google.com> Reviewed-by: 's avatarTobin Ehlis <tobine@google.com>
parent c37d2370
...@@ -178,14 +178,7 @@ class FrameCapture final : angle::NonCopyable ...@@ -178,14 +178,7 @@ class FrameCapture final : angle::NonCopyable
size_t vertexCount, size_t vertexCount,
size_t instanceCount); size_t instanceCount);
void writeCallReplay(const CallCapture &call,
DataCounters *counters,
std::ostream &out,
std::ostream &header,
std::vector<uint8_t> *binaryData);
void reset(); void reset();
bool anyClientArray() const;
void saveCapturedFrameAsCpp(int contextId);
void maybeCaptureClientData(const gl::Context *context, const CallCapture &call); void maybeCaptureClientData(const gl::Context *context, const CallCapture &call);
void maybeUpdateResourceIDs(const gl::Context *context, const CallCapture &call); void maybeUpdateResourceIDs(const gl::Context *context, const CallCapture &call);
...@@ -196,9 +189,8 @@ class FrameCapture final : angle::NonCopyable ...@@ -196,9 +189,8 @@ class FrameCapture final : angle::NonCopyable
std::vector<CallCapture> mCalls; std::vector<CallCapture> mCalls;
gl::AttribArray<int> mClientVertexArrayMap; gl::AttribArray<int> mClientVertexArrayMap;
size_t mFrameIndex; uint32_t mFrameIndex;
gl::AttribArray<size_t> mClientArraySizes; gl::AttribArray<size_t> mClientArraySizes;
angle::PackedEnumMap<ResourceIDType, uint32_t, angle::kParamTypeCount> mResourceIDCounts;
size_t mReadBufferSize; size_t mReadBufferSize;
static void ReplayCall(gl::Context *context, static void ReplayCall(gl::Context *context,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment