std::shared_ptr<FenceTime> glCompositionDoneFenceTime; if (display && display->getCompositionDisplay()->getState().usesClientComposition) { glCompositionDoneFenceTime = std::make_shared<FenceTime>(display->getCompositionDisplay() ->getRenderSurface() ->getClientTargetAcquireFence()); } else { glCompositionDoneFenceTime = FenceTime::NO_FENCE; }
时间: 2024-02-15 18:27:05 浏览: 70
C++11 std::shared_ptr总结与使用示例代码详解
这段代码看起来是用来创建一个 std::shared_ptr<FenceTime> 对象,并根据条件赋值不同的值。如果 display 存在,并且它所对应的 CompositionDisplay 的状态使用了客户端组合,则创建一个新的 FenceTime 对象,并将其初始化为获取客户端目标采集 fence 的结果。否则,将 glCompositionDoneFenceTime 赋值为 FenceTime::NO_FENCE,即一个空的 FenceTime 对象。这段代码可能在图形界面的渲染过程中使用。
阅读全文