21CommandBufferVK::CommandBufferVK(
22 std::weak_ptr<const Context> context,
23 std::shared_ptr<CommandEncoderFactoryVK> encoder_factory)
24 : CommandBuffer(
std::move(context)),
25 encoder_factory_(
std::move(encoder_factory)) {}
27CommandBufferVK::~CommandBufferVK() =
default;
29void CommandBufferVK::SetLabel(
const std::string& label)
const {
31 encoder_factory_->SetLabel(label);
33 auto context = context_.lock();
34 if (!context || !encoder_) {
37 ContextVK::Cast(*context).SetDebugName(encoder_->GetCommandBuffer(), label);
41bool CommandBufferVK::IsValid()
const {
45const std::shared_ptr<CommandEncoderVK>& CommandBufferVK::GetEncoder() {
47 encoder_ = encoder_factory_->Create();
56void CommandBufferVK::OnWaitUntilScheduled() {}
58std::shared_ptr<RenderPass> CommandBufferVK::OnCreateRenderPass(
60 auto context = context_.lock();
69 if (!pass->IsValid()) {
75std::shared_ptr<BlitPass> CommandBufferVK::OnCreateBlitPass() {
79 auto pass = std::shared_ptr<BlitPassVK>(
new BlitPassVK(weak_from_this()));
80 if (!pass->IsValid()) {
86std::shared_ptr<ComputePass> CommandBufferVK::OnCreateComputePass() {
90 auto context = context_.lock();
98 if (!pass->IsValid()) {
std::function< void(Status)> CompletionCallback
FlKeyEvent uint64_t FlKeyResponderAsyncCallback callback
#define FML_UNREACHABLE()