blob: cc26958ea23056787774ea9e664b8210c3f3f2d8 [file] [log] [blame]
/*
* Copyright 2021 Google Inc.
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#include "src/gpu/ganesh/mtl/GrMtlFramebuffer.h"
#include "src/gpu/ganesh/mtl/GrMtlAttachment.h"
sk_sp<const GrMtlFramebuffer> GrMtlFramebuffer::Make(
GrMtlAttachment* colorAttachment,
GrMtlAttachment* resolveAttachment,
GrMtlAttachment* stencilAttachment) {
// At the very least we need a colorAttachment
SkASSERT(colorAttachment);
auto fb = new GrMtlFramebuffer(sk_ref_sp(colorAttachment), sk_ref_sp(resolveAttachment),
sk_ref_sp(stencilAttachment));
return sk_sp<const GrMtlFramebuffer>(fb);
}
GrMtlFramebuffer::GrMtlFramebuffer(sk_sp<GrMtlAttachment> colorAttachment,
sk_sp<GrMtlAttachment> resolveAttachment,
sk_sp<GrMtlAttachment> stencilAttachment)
: fColorAttachment(std::move(colorAttachment))
, fResolveAttachment(std::move(resolveAttachment))
, fStencilAttachment(std::move(stencilAttachment)) {
}
GrMtlFramebuffer::~GrMtlFramebuffer() = default;