| Flutter Impeller |

context_mtl.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef FLUTTER_IMPELLER_TOOLKIT_INTEROP_BACKEND_METAL_CONTEXT_MTL_H_
6 #define FLUTTER_IMPELLER_TOOLKIT_INTEROP_BACKEND_METAL_CONTEXT_MTL_H_
7
8 #include "impeller/renderer/backend/metal/swapchain_transients_mtl.h"
9 #include "impeller/toolkit/interop/context.h"
10
11 namespace impeller::interop {
12
13 class ContextMTL final : public Context {
14 public:
15 static ScopedObject<Context> Create();
16
17 static ScopedObject<Context> Create(
18 const std::shared_ptr<impeller::Context>& context);
19
20 // |Context|
21 ~ContextMTL() override;
22
23 ContextMTL(const ContextMTL&) = delete;
24
25 ContextMTL& operator=(const ContextMTL&) = delete;
26
27 const std::shared_ptr<SwapchainTransientsMTL>& GetSwapchainTransients() const;
28
29 private:
30 std::shared_ptr<SwapchainTransientsMTL> swapchain_transients_;
31
32 explicit ContextMTL(const std::shared_ptr<impeller::Context>& context);
33 };
34
35 } // namespace impeller::interop
36
37 #endif // FLUTTER_IMPELLER_TOOLKIT_INTEROP_BACKEND_METAL_CONTEXT_MTL_H_
impeller::interop::Context
Definition: context.h:16
impeller::interop::ContextMTL
Definition: context_mtl.h:13
impeller::interop::ContextMTL::GetSwapchainTransients
const std::shared_ptr< SwapchainTransientsMTL > & GetSwapchainTransients() const
Definition: context_mtl.mm:62
impeller::interop::ContextMTL::operator=
ContextMTL & operator=(const ContextMTL &)=delete
impeller::interop::ContextMTL::Create
static ScopedObject< Context > Create()
Definition: context_mtl.mm:29
impeller::interop::ContextMTL::ContextMTL
ContextMTL(const ContextMTL &)=delete
impeller::interop::ContextMTL::~ContextMTL
~ContextMTL() override
impeller::interop::ScopedObject
Definition: object.h:67
impeller::interop
Definition: context_gles.cc:12
swapchain_transients_mtl.h
context.h