1 /* 2 * Copyright 2024 Google LLC 3 * 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8 #ifndef skgpu_SwizzlePriv_DEFINED 9 #define skgpu_SwizzlePriv_DEFINED 10 11 #include "src/gpu/Swizzle.h" 12 13 #include <cstdint> 14 15 namespace skgpu { 16 17 // This class is friended by Swizzle and allows other functions to trampoline through this 18 // to call the private Swizzle ctor. 19 class SwizzleCtorAccessor { 20 public: Make(uint16_t key)21 static Swizzle Make(uint16_t key) { return Swizzle(key); } 22 }; 23 24 } // namespace skgpu 25 26 #endif // skgpu_SwizzlePriv_DEFINED 27