29 GTEST_SKIP() <<
"GL Version too low to test sync fence.";
34 desc.
size = {100, 100};
37 auto texture = GetContext()->GetResourceAllocator()->CreateTexture(desc);
40 EXPECT_TRUE(GetContext()->AddTrackingFence(
texture));
41 EXPECT_TRUE(context_gles.
GetReactor()->React());
43 std::optional<HandleGLES> sync_fence =
45 ASSERT_TRUE(sync_fence.has_value());
46 if (!sync_fence.has_value()) {
51 std::optional<GLsync> sync =
52 context_gles.
GetReactor()->GetGLFence(sync_fence.value());
53 ASSERT_TRUE(sync.has_value());
54 if (!sync.has_value()) {
63 return TextureGLES::Cast(*texture).Bind();
67 ASSERT_FALSE(sync_fence.has_value());
const std::shared_ptr< ReactorGLES > & GetReactor() const
std::optional< HandleGLES > GetSyncFence() const
@ kRenderBufferMultisampled
void Leak()
Reset the internal texture state so that the reactor will not free the associated handle.
Type ComputeTypeForBinding(GLenum target) const
std::optional< GLuint > GetGLHandle() const
A lightweight object that describes the attributes of a texture that can then used an allocator to cr...