| /* |
| * Copyright 2021 Google LLC |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #include "src/gpu/mtl/MtlMemoryAllocatorImpl.h" |
| |
| namespace skgpu { |
| |
| sk_sp<MtlMemoryAllocator> MtlMemoryAllocatorImpl::Make(id<MTLDevice> device) { |
| return sk_sp<MtlMemoryAllocator>(new MtlMemoryAllocatorImpl(device)); |
| } |
| |
| id<MTLBuffer> MtlMemoryAllocatorImpl::newBufferWithLength(NSUInteger length, |
| MTLResourceOptions options, |
| sk_sp<MtlAlloc>* allocation) { |
| // TODO: suballocate and fill in Alloc |
| allocation->reset(new Alloc()); |
| return [fDevice newBufferWithLength:length options:options]; |
| } |
| |
| id<MTLTexture> MtlMemoryAllocatorImpl::newTextureWithDescriptor(MTLTextureDescriptor* texDesc, |
| sk_sp<MtlAlloc>* allocation) { |
| // TODO: suballocate and fill in Alloc |
| allocation->reset(new Alloc()); |
| return [fDevice newTextureWithDescriptor:texDesc]; |
| } |
| |
| } // namespace skgpu |