Foray Library
rapid prototyping framework for crossplatform development of vulkan hardware ray tracing applications
|
General purpose image loader. More...
#include <foray_imageloader.hpp>
Classes | |
class | ImageInfo |
Public Types | |
using | FORMAT_TRAITS = ImageFormatTraits< FORMAT > |
Public Member Functions | |
ImageLoader () | |
bool | Init (const osi::Utf8Path &utf8path) |
Inits the image loader. | |
bool | Load () |
Loads the file into CPU memory (Init first!) | |
void | Destroy () |
Cleans up the loader. | |
virtual | ~ImageLoader () |
void | InitManagedImage (core::Context *context, core::ManagedImage *image, core::ManagedImage::CreateInfo &ci, VkImageLayout afterwrite=VkImageLayout::VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL) const |
void | InitManagedImage (core::Context *context, core::HostSyncCommandBuffer &cmdBuffer, core::ManagedImage *image, core::ManagedImage::CreateInfo &ci, VkImageLayout afterwrite=VkImageLayout::VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL) const |
void | UpdateManagedImageCI (core::ManagedImage::CreateInfo &ci) const |
void | WriteManagedImageData (core::ManagedImage *image, VkImageLayout afterwrite) const |
void | WriteManagedImageData (core::HostSyncCommandBuffer &cmdBuffer, core::ManagedImage *image, VkImageLayout afterwrite) const |
Static Public Member Functions | |
static bool | sFormatSupported (core::Context *context) |
Checks if format the loader was initialized in supports linear tiling transfer and shader read. | |
Protected Member Functions | |
bool | PopulateImageInfo_TinyExr () |
bool | PopulateImageInfo_Stb () |
bool | Load_TinyExr () |
bool | Load_Stb () |
Protected Attributes | |
ImageInfo | mInfo |
std::vector< uint8_t > | mRawData |
void * | mCustomLoaderInfo = nullptr |
std::function< void(void *)> | mCustomLoaderInfoDeleter = {} |
General purpose image loader.
using foray::util::ImageLoader< FORMAT >::FORMAT_TRAITS = ImageFormatTraits<FORMAT> |
|
inline |
|
inlinevirtual |
|
inline |
Cleans up the loader.
|
inline |
Inits the image loader.
|
inline |
|
inline |
|
inline |
Loads the file into CPU memory (Init first!)
|
protected |
|
protected |
|
protected |
|
protected |
|
inlinestatic |
Checks if format the loader was initialized in supports linear tiling transfer and shader read.
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |