xref: /aosp_15_r20/external/skia/tools/skottie_ios_app/GrContextHolder.h (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1 // Copyright 2019 Google LLC.
2 // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
3 #ifndef GrContextHolder_DEFINED
4 #define GrContextHolder_DEFINED
5 
6 #include <memory>
7 
8 class GrDirectContext;
9 
10 // A struct to take ownership of a GrDirectContext.
11 struct GrContextRelease { void operator()(GrDirectContext*); };
12 using GrContextHolder = std::unique_ptr<GrDirectContext, GrContextRelease>;
13 
14 // Wrapper around GrDirectContexts::MakeGL
15 GrContextHolder SkMakeGLContext();
16 
17 #endif  // GrContextHolder_DEFINED
18