OLD | NEW |
| (Empty) |
1 | |
2 /* | |
3 * Copyright 2015 Google Inc. | |
4 * | |
5 * Use of this source code is governed by a BSD-style license that can be | |
6 * found in the LICENSE file. | |
7 */ | |
8 #ifndef SkGpuFenceSync_DEFINED | |
9 #define SkGpuFenceSync_DEFINED | |
10 | |
11 #include "SkTypes.h" | |
12 | |
13 typedef void* SkPlatformGpuFence; | |
14 constexpr static SkPlatformGpuFence kInvalidPlatformGpuFence = nullptr; | |
15 | |
16 /* | |
17 * This class provides an interface to interact with fence syncs. A fence sync i
s an object that the | |
18 * client can insert into the GPU command stream, and then at any future time, w
ait until all | |
19 * commands that were issued before the fence have completed. | |
20 */ | |
21 class SkGpuFenceSync { | |
22 public: | |
23 virtual SkPlatformGpuFence SK_WARN_UNUSED_RESULT insertFence() const = 0; | |
24 virtual bool waitFence(SkPlatformGpuFence) const = 0; | |
25 virtual void deleteFence(SkPlatformGpuFence) const = 0; | |
26 | |
27 virtual ~SkGpuFenceSync() {} | |
28 }; | |
29 | |
30 #endif | |
OLD | NEW |