nngn
Loading...
Searching...
No Matches
nngn::Image Struct Reference

#include <resource.h>

Inheritance diagram for nngn::Image:

Public Member Functions

VkImage id () const
 
VkDeviceMemory mem () const
 
void destroy (VkDevice dev, DeviceMemory *dev_mem)
 
template<VkMemoryPropertyFlags f>
bool init (VkDevice dev, DeviceMemory *dev_mem, VkImageCreateFlags flags, VkImageType type, VkFormat format, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t n_layers, VkSampleCountFlagBits n_samples, VkImageTiling tiling, VkImageUsageFlags usage)
 
bool init_mipmaps (VkCommandBuffer cmd, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t base_layer, std::uint32_t n_layers) const
 
bool create_view (VkDevice dev, VkImageViewType type, VkFormat format, VkImageAspectFlags aspect_flags, std::uint32_t mip_levels, std::uint32_t base_layer, std::uint32_t n_layers, VkImageView *p) const
 
void transition_layout (VkCommandBuffer cmd, VkPipelineStageFlags src_stage, VkPipelineStageFlags dst_stage, VkAccessFlags src_mask, VkAccessFlags dst_mask, VkImageLayout src, VkImageLayout dst, const VkImageSubresourceRange &range) const
 
VkImage id () const
 
VkDeviceMemory mem () const
 
void destroy (VkDevice dev, DeviceMemory *dev_mem)
 
template<VkMemoryPropertyFlags f>
bool init (VkDevice dev, DeviceMemory *dev_mem, VkImageCreateFlags flags, VkImageType type, VkFormat format, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t n_layers, VkSampleCountFlagBits n_samples, VkImageTiling tiling, VkImageUsageFlags usage)
 
bool init_mipmaps (VkCommandBuffer cmd, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t base_layer, std::uint32_t n_layers) const
 
bool create_view (VkDevice dev, VkImageViewType type, VkFormat format, VkImageAspectFlags aspect_flags, std::uint32_t mip_levels, std::uint32_t base_layer, std::uint32_t n_layers, VkImageView *p) const
 
void transition_layout (VkCommandBuffer cmd, VkPipelineStageFlags src_stage, VkPipelineStageFlags dst_stage, VkAccessFlags src_mask, VkAccessFlags dst_mask, VkImageLayout src, VkImageLayout dst, const VkImageSubresourceRange &range) const
 

Private Member Functions

bool init (VkDevice dev, VkImageCreateFlags flags, VkImageType type, VkFormat format, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t n_layers, VkSampleCountFlagBits n_samples, VkImageTiling tiling, VkImageUsageFlags usage)
 
bool init (VkDevice dev, VkImageCreateFlags flags, VkImageType type, VkFormat format, VkExtent3D extent, std::uint32_t mip_levels, std::uint32_t n_layers, VkSampleCountFlagBits n_samples, VkImageTiling tiling, VkImageUsageFlags usage)
 

Private Attributes

VkImage h = {}
 
VkDeviceMemory hm = {}
 

Member Function Documentation

◆ create_view() [1/2]

bool nngn::Image::create_view ( VkDevice  dev,
VkImageViewType  type,
VkFormat  format,
VkImageAspectFlags  aspect_flags,
std::uint32_t  mip_levels,
std::uint32_t  base_layer,
std::uint32_t  n_layers,
VkImageView p 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ create_view() [2/2]

bool nngn::Image::create_view ( VkDevice  dev,
VkImageViewType  type,
VkFormat  format,
VkImageAspectFlags  aspect_flags,
std::uint32_t  mip_levels,
std::uint32_t  base_layer,
std::uint32_t  n_layers,
VkImageView p 
) const

◆ destroy() [1/2]

void nngn::Image::destroy ( VkDevice  dev,
DeviceMemory dev_mem 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ destroy() [2/2]

void nngn::Image::destroy ( VkDevice  dev,
DeviceMemory dev_mem 
)

◆ id() [1/2]

VkImage nngn::Image::id ( ) const
inline
Here is the caller graph for this function:

◆ id() [2/2]

VkImage nngn::Image::id ( ) const
inline

◆ init() [1/4]

template<VkMemoryPropertyFlags f>
bool nngn::Image::init ( VkDevice  dev,
DeviceMemory dev_mem,
VkImageCreateFlags  flags,
VkImageType  type,
VkFormat  format,
VkExtent3D  extent,
std::uint32_t  mip_levels,
std::uint32_t  n_layers,
VkSampleCountFlagBits  n_samples,
VkImageTiling  tiling,
VkImageUsageFlags  usage 
)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ init() [2/4]

template<VkMemoryPropertyFlags f>
bool nngn::Image::init ( VkDevice  dev,
DeviceMemory dev_mem,
VkImageCreateFlags  flags,
VkImageType  type,
VkFormat  format,
VkExtent3D  extent,
std::uint32_t  mip_levels,
std::uint32_t  n_layers,
VkSampleCountFlagBits  n_samples,
VkImageTiling  tiling,
VkImageUsageFlags  usage 
)

◆ init() [3/4]

bool nngn::Image::init ( VkDevice  dev,
VkImageCreateFlags  flags,
VkImageType  type,
VkFormat  format,
VkExtent3D  extent,
std::uint32_t  mip_levels,
std::uint32_t  n_layers,
VkSampleCountFlagBits  n_samples,
VkImageTiling  tiling,
VkImageUsageFlags  usage 
)
private
Here is the call graph for this function:

◆ init() [4/4]

bool nngn::Image::init ( VkDevice  dev,
VkImageCreateFlags  flags,
VkImageType  type,
VkFormat  format,
VkExtent3D  extent,
std::uint32_t  mip_levels,
std::uint32_t  n_layers,
VkSampleCountFlagBits  n_samples,
VkImageTiling  tiling,
VkImageUsageFlags  usage 
)
private

◆ init_mipmaps() [1/2]

bool nngn::Image::init_mipmaps ( VkCommandBuffer  cmd,
VkExtent3D  extent,
std::uint32_t  mip_levels,
std::uint32_t  base_layer,
std::uint32_t  n_layers 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ init_mipmaps() [2/2]

bool nngn::Image::init_mipmaps ( VkCommandBuffer  cmd,
VkExtent3D  extent,
std::uint32_t  mip_levels,
std::uint32_t  base_layer,
std::uint32_t  n_layers 
) const

◆ mem() [1/2]

VkDeviceMemory nngn::Image::mem ( ) const
inline
Here is the caller graph for this function:

◆ mem() [2/2]

VkDeviceMemory nngn::Image::mem ( ) const
inline

◆ transition_layout() [1/2]

void nngn::Image::transition_layout ( VkCommandBuffer  cmd,
VkPipelineStageFlags  src_stage,
VkPipelineStageFlags  dst_stage,
VkAccessFlags  src_mask,
VkAccessFlags  dst_mask,
VkImageLayout  src,
VkImageLayout  dst,
const VkImageSubresourceRange &  range 
) const
Here is the call graph for this function:
Here is the caller graph for this function:

◆ transition_layout() [2/2]

void nngn::Image::transition_layout ( VkCommandBuffer  cmd,
VkPipelineStageFlags  src_stage,
VkPipelineStageFlags  dst_stage,
VkAccessFlags  src_mask,
VkAccessFlags  dst_mask,
VkImageLayout  src,
VkImageLayout  dst,
const VkImageSubresourceRange &  range 
) const

Member Data Documentation

◆ h

VkImage nngn::Image::h = {}
private

◆ hm

VkDeviceMemory nngn::Image::hm = {}
private

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