Rework libjpeg Auxiliary supports to address some problems (#638)

This commit is contained in:
Chuck Walbourn
2025-10-23 18:56:48 -07:00
committed by GitHub
parent f3b184489b
commit f04d5cb47f
6 changed files with 125 additions and 56 deletions

View File

@@ -18,16 +18,39 @@
namespace DirectX
{
enum JPEG_FLAGS : uint32_t
{
JPEG_FLAGS_NONE = 0x0,
JPEG_FLAGS_DEFAULT_LINEAR = 0x1,
// Return non-SRGB formats intead of sRGB
};
DIRECTX_TEX_API HRESULT __cdecl GetMetadataFromJPEGFile(
_In_z_ const wchar_t* szFile,
JPEG_FLAGS flags,
_Out_ TexMetadata& metadata);
DIRECTX_TEX_API HRESULT __cdecl LoadFromJPEGFile(
_In_z_ const wchar_t* szFile,
JPEG_FLAGS flags,
_Out_opt_ TexMetadata* metadata,
_Out_ ScratchImage& image);
DIRECTX_TEX_API HRESULT __cdecl SaveToJPEGFile(
_In_ const Image& image,
JPEG_FLAGS flags,
_In_z_ const wchar_t* szFile);
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-dynamic-exception-spec"
#pragma clang diagnostic ignored "-Wextra-semi-stmt"
#endif
DEFINE_ENUM_FLAG_OPERATORS(JPEG_FLAGS);
#ifdef __clang__
#pragma clang diagnostic pop
#endif
}