5 #ifndef FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_TRACKED_OBJECTS_VK_H_
6 #define FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_TRACKED_OBJECTS_VK_H_
20 const std::shared_ptr<CommandPoolVK>& pool,
21 std::unique_ptr<GPUProbe> probe);
27 void Track(std::shared_ptr<SharedObjectVK>
object);
29 void Track(std::shared_ptr<const DeviceBuffer> buffer);
31 bool IsTracking(
const std::shared_ptr<const DeviceBuffer>& buffer)
const;
33 void Track(std::shared_ptr<const TextureSourceVK> texture);
35 bool IsTracking(
const std::shared_ptr<const TextureSourceVK>& texture)
const;
46 std::shared_ptr<CommandPoolVK> pool_;
47 vk::UniqueCommandBuffer buffer_;
48 std::set<std::shared_ptr<SharedObjectVK>> tracked_objects_;
49 std::set<std::shared_ptr<const DeviceBuffer>> tracked_buffers_;
50 std::set<std::shared_ptr<const TextureSourceVK>> tracked_textures_;
51 std::unique_ptr<GPUProbe> probe_;
52 bool is_valid_ =
false;
61 #endif // FLUTTER_IMPELLER_RENDERER_BACKEND_VULKAN_TRACKED_OBJECTS_VK_H_