Share recorded document upload reporting
This commit is contained in:
@@ -5,7 +5,6 @@
|
||||
#include "app.h"
|
||||
#include "legacy_document_canvas_services.h"
|
||||
#include "paint_renderer/compositor.h"
|
||||
#include "renderer_api/recording_renderer.h"
|
||||
|
||||
#include <string>
|
||||
#include <thread>
|
||||
@@ -46,41 +45,28 @@ pp::foundation::Status prepare_legacy_document_export_snapshot(App& app, const c
|
||||
return pp::foundation::Status::success();
|
||||
}
|
||||
|
||||
pp::renderer::RecordingRenderDevice render_device;
|
||||
const auto uploaded = pp::paint_renderer::upload_document_frame_faces(
|
||||
render_device,
|
||||
const auto recorded_upload = pp::paint_renderer::record_document_frame_upload(
|
||||
pp::paint_renderer::DocumentFrameUploadRequest {
|
||||
.document = &snapshot.value().document,
|
||||
.frame_index = snapshot.value().document.active_frame_index(),
|
||||
.clear_color = {},
|
||||
});
|
||||
if (!uploaded) {
|
||||
LOG("%s document export renderer upload failed: %s", context, uploaded.status().message);
|
||||
return uploaded.status();
|
||||
}
|
||||
|
||||
std::size_t upload_commands = 0;
|
||||
std::size_t transition_commands = 0;
|
||||
const auto commands = render_device.commands();
|
||||
for (const auto& command : commands) {
|
||||
if (command.kind == pp::renderer::RecordedRenderCommandKind::upload_texture) {
|
||||
++upload_commands;
|
||||
}
|
||||
if (command.kind == pp::renderer::RecordedRenderCommandKind::transition_texture) {
|
||||
++transition_commands;
|
||||
}
|
||||
if (!recorded_upload) {
|
||||
LOG("%s document export renderer upload failed: %s", context, recorded_upload.status().message);
|
||||
return recorded_upload.status();
|
||||
}
|
||||
|
||||
const auto& uploaded = recorded_upload.value().upload;
|
||||
LOG(
|
||||
"%s document export renderer upload: textures=%zu bytes=%llu transitions=%zu facePayloads=%zu commands=%zu uploadCommands=%zu transitionCommands=%zu",
|
||||
context,
|
||||
uploaded.value().texture_count,
|
||||
static_cast<unsigned long long>(uploaded.value().uploaded_bytes),
|
||||
uploaded.value().transition_count,
|
||||
uploaded.value().composite.face_payload_count,
|
||||
commands.size(),
|
||||
upload_commands,
|
||||
transition_commands);
|
||||
uploaded.texture_count,
|
||||
static_cast<unsigned long long>(uploaded.uploaded_bytes),
|
||||
uploaded.transition_count,
|
||||
uploaded.composite.face_payload_count,
|
||||
recorded_upload.value().command_count,
|
||||
recorded_upload.value().upload_command_count,
|
||||
recorded_upload.value().transition_command_count);
|
||||
return pp::foundation::Status::success();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user