| Flutter Impeller |

Classes | Public Member Functions | Friends | List of all members
impeller::DeviceBufferVK Class Referencefinal

`#include <device_buffer_vk.h>`

Inheritance diagram for impeller::DeviceBufferVK:

## Public Member Functions
| DeviceBufferVK (DeviceBufferDescriptor desc, std::weak_ptr< Context > context, UniqueBufferVMA buffer, VmaAllocationInfo info, bool is_host_coherent)
| ~DeviceBufferVK () override
vk::Buffer | GetBuffer () const
bool | IsHostCoherent () const
Public Member Functions inherited from impeller::DeviceBuffer
virtual | ~DeviceBuffer ()
bool | CopyHostBuffer (const uint8_t *source, Range source_range, size_t offset=0u)
const DeviceBufferDescriptor & | GetDeviceBufferDescriptor () const

## Friends
class | AllocatorVK

## Additional Inherited Members
Static Public Member Functions inherited from impeller::DeviceBuffer
static BufferView | AsBufferView (std::shared_ptr< DeviceBuffer > buffer)
| Create a buffer view of this entire buffer. More...
Static Public Member Functions inherited from impeller::BackendCast< DeviceBufferVK, DeviceBuffer >
static DeviceBufferVK & | Cast (DeviceBuffer &base)
static const DeviceBufferVK & | Cast (const DeviceBuffer &base)
static DeviceBufferVK * | Cast (DeviceBuffer *base)
static const DeviceBufferVK * | Cast (const DeviceBuffer *base)
Protected Member Functions inherited from impeller::DeviceBuffer
| DeviceBuffer (DeviceBufferDescriptor desc)
Protected Attributes inherited from impeller::DeviceBuffer
const DeviceBufferDescriptor | desc_

## Detailed Description

Definition at line 17 of file device_buffer_vk.h.

## Constructor & Destructor Documentation

## ◆ DeviceBufferVK()

impeller::DeviceBufferVK::DeviceBufferVK | ( | DeviceBufferDescriptor | desc,
|  | std::weak_ptr< Context > | context,
|  | UniqueBufferVMA | buffer,
|  | VmaAllocationInfo | info,
|  | bool | is_host_coherent
| ) |  |

Definition at line 12 of file device_buffer_vk.cc.

17 : DeviceBuffer(desc),
18 context_(std::move(context)),
19 resource_(ContextVK::Cast(*context_.lock().get()).GetResourceManager(),
20 BufferResource{
21 std::move(buffer), //
22 info //
23 }),
24 is_host_coherent_(is_host_coherent) {}
impeller::BackendCast< ContextVK, Context >::Cast
static ContextVK & Cast(Context &base)
Definition: backend_cast.h:13
impeller::ContextVK::GetResourceManager
std::shared_ptr< ResourceManagerVK > GetResourceManager() const
Definition: context_vk.cc:633
impeller::DeviceBuffer::DeviceBuffer
DeviceBuffer(DeviceBufferDescriptor desc)
Definition: device_buffer.cc:9
impeller::BufferResource
Resource< BufferView > BufferResource
Definition: command.h:55

## ◆ ~DeviceBufferVK()

impeller::DeviceBufferVK::~DeviceBufferVK | ( |  | ) |
| override default

## Member Function Documentation

## ◆ GetBuffer()

vk::Buffer impeller::DeviceBufferVK::GetBuffer | ( |  | ) | const

Definition at line 98 of file device_buffer_vk.cc.

98 {
99 return resource_->buffer.get().buffer;
100 }

## ◆ IsHostCoherent()

bool impeller::DeviceBufferVK::IsHostCoherent | ( |  | ) | const

Definition at line 82 of file device_buffer_vk.cc.

82 {
83 return is_host_coherent_;
84 }

## Friends And Related Function Documentation

## ◆ AllocatorVK

friend class AllocatorVK
| friend

Definition at line 35 of file device_buffer_vk.h.

The documentation for this class was generated from the following files:

- impeller/renderer/backend/vulkan/device_buffer_vk.h
- impeller/renderer/backend/vulkan/device_buffer_vk.cc