[graphite] Stub in more Metal classes

Bug: skia:12466
Change-Id: I83ebf7dbea0d67b3c121b011f62e7b729f5e5257
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/453577
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This commit is contained in:
Jim Van Verth 2021-09-28 11:55:21 -04:00 committed by SkCQ
parent aaa81ab61e
commit 47b6286e6e
10 changed files with 177 additions and 1 deletions

View File

@ -13,7 +13,7 @@ namespace skgpu {
// TODO: derive this from something like GrManagedResource
class Pipeline {
public:
~Pipeline();
virtual ~Pipeline();
protected:
Pipeline();

View File

@ -0,0 +1,27 @@
/*
* Copyright 2021 Google LLC
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef skgpu_MtlCaps_DEFINED
#define skgpu_MtlCaps_DEFINED
#include "experimental/graphite/src/Caps.h"
#import <Metal/Metal.h>
namespace skgpu::mtl {
class Caps final : public skgpu::Caps {
public:
Caps(id<MTLDevice>);
~Caps() final {}
private:
};
} // namespace skgpu::mtl
#endif // skgpu_MtlCaps_DEFINED

View File

@ -0,0 +1,15 @@
/*
* 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 "experimental/graphite/src/mtl/MtlCaps.h"
namespace skgpu::mtl {
Caps::Caps(id<MTLDevice> device) {
}
} // namespace skgpu::mtl

View File

@ -0,0 +1,27 @@
/*
* Copyright 2021 Google LLC
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef skgpu_MtlCommandBuffer_DEFINED
#define skgpu_MtlCommandBuffer_DEFINED
#include "experimental/graphite/src/CommandBuffer.h"
#import <Metal/Metal.h>
namespace skgpu::mtl {
class CommandBuffer final : public skgpu::CommandBuffer {
public:
CommandBuffer();
~CommandBuffer() override {}
private:
};
} // namespace skgpu::mtl
#endif // skgpu_MtlCommandBuffer_DEFINED

View File

@ -0,0 +1,15 @@
/*
* 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 "experimental/graphite/src/mtl/MtlCommandBuffer.h"
namespace skgpu::mtl {
CommandBuffer::CommandBuffer() {
}
} // namespace skgpu::mtl

View File

@ -0,0 +1,27 @@
/*
* Copyright 2021 Google LLC
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef skgpu_MtlPipeline_DEFINED
#define skgpu_MtlPipeline_DEFINED
#include "experimental/graphite/src/Pipeline.h"
#import <Metal/Metal.h>
namespace skgpu::mtl {
class Pipeline final : public skgpu::Pipeline {
public:
Pipeline();
~Pipeline() override {}
private:
};
} // namespace skgpu::mtl
#endif // skgpu_MtlPipeline_DEFINED

View File

@ -0,0 +1,15 @@
/*
* 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 "experimental/graphite/src/mtl/MtlPipeline.h"
namespace skgpu::mtl {
Pipeline::Pipeline() {
}
} // namespace skgpu::mtl

View File

@ -0,0 +1,27 @@
/*
* Copyright 2021 Google LLC
*
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
#ifndef skgpu_MtlResourceProvider_DEFINED
#define skgpu_MtlResourceProvider_DEFINED
#include "experimental/graphite/src/ResourceProvider.h"
#import <Metal/Metal.h>
namespace skgpu::mtl {
class ResourceProvider final : public skgpu::ResourceProvider {
public:
ResourceProvider();
~ResourceProvider() override {}
private:
};
} // namespace skgpu::mtl
#endif // skgpu_MtlResourceProvider_DEFINED

View File

@ -0,0 +1,15 @@
/*
* 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 "experimental/graphite/src/mtl/MtlResourceProvider.h"
namespace skgpu::mtl {
ResourceProvider::ResourceProvider() {
}
} // namespace skgpu::mtl

View File

@ -43,6 +43,14 @@ skia_graphite_sources = [
]
skia_graphite_mtl_sources = [
"$_src/mtl/MtlCaps.h",
"$_src/mtl/MtlCaps.mm",
"$_src/mtl/MtlCommandBuffer.h",
"$_src/mtl/MtlCommandBuffer.mm",
"$_src/mtl/MtlGpu.h",
"$_src/mtl/MtlGpu.mm",
"$_src/mtl/MtlPipeline.h",
"$_src/mtl/MtlPipeline.mm",
"$_src/mtl/MtlResourceProvider.h",
"$_src/mtl/MtlResourceProvider.mm",
]