mirror of
https://github.com/libretro/RetroArch
synced 2025-02-28 22:13:51 +00:00
(gfx/video_texture_image.c) Drop more implementation details
This commit is contained in:
parent
52948b436e
commit
1166be62ae
@ -26,9 +26,6 @@
|
||||
#include <boolean.h>
|
||||
#include <formats/image.h>
|
||||
#include <file/nbio.h>
|
||||
#ifdef HAVE_RJPEG
|
||||
#include <formats/rjpeg.h>
|
||||
#endif
|
||||
#ifdef HAVE_RTGA
|
||||
#include <formats/tga.h>
|
||||
#endif
|
||||
@ -229,6 +226,22 @@ static enum video_image_format video_texture_image_get_type(const char *path)
|
||||
return IMAGE_FORMAT_NONE;
|
||||
}
|
||||
|
||||
static enum image_type_enum video_texture_image_convert_fmt_to_type(enum video_image_format fmt)
|
||||
{
|
||||
switch (fmt)
|
||||
{
|
||||
case IMAGE_FORMAT_PNG:
|
||||
return IMAGE_TYPE_PNG;
|
||||
case IMAGE_FORMAT_JPEG:
|
||||
return IMAGE_TYPE_JPEG;
|
||||
default:
|
||||
case IMAGE_FORMAT_NONE:
|
||||
break;
|
||||
}
|
||||
|
||||
return IMAGE_TYPE_NONE;
|
||||
}
|
||||
|
||||
bool video_texture_image_load(struct texture_image *out_img,
|
||||
const char *path)
|
||||
{
|
||||
@ -270,18 +283,12 @@ bool video_texture_image_load(struct texture_image *out_img,
|
||||
#endif
|
||||
break;
|
||||
case IMAGE_FORMAT_PNG:
|
||||
if (video_texture_image_load_internal(
|
||||
IMAGE_TYPE_PNG,
|
||||
ptr,out_img,
|
||||
a_shift, r_shift, g_shift, b_shift))
|
||||
goto success;
|
||||
break;
|
||||
case IMAGE_FORMAT_JPEG:
|
||||
#ifdef HAVE_RJPEG
|
||||
if (rjpeg_image_load((uint8_t*)ptr, out_img, file_len,
|
||||
if (video_texture_image_load_internal(
|
||||
video_texture_image_convert_fmt_to_type(fmt),
|
||||
ptr,out_img,
|
||||
a_shift, r_shift, g_shift, b_shift))
|
||||
goto success;
|
||||
#endif
|
||||
break;
|
||||
default:
|
||||
case IMAGE_FORMAT_NONE:
|
||||
|
@ -25,6 +25,8 @@ void image_transfer_free(void *data, enum image_type_enum type)
|
||||
rjpeg_free((rjpeg_t*)data);
|
||||
#endif
|
||||
break;
|
||||
case IMAGE_TYPE_NONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -59,16 +61,21 @@ bool image_transfer_start(void *data, enum image_type_enum type)
|
||||
case IMAGE_TYPE_PNG:
|
||||
#ifdef HAVE_RPNG
|
||||
if (!rpng_start((rpng_t*)data))
|
||||
return false;
|
||||
#endif
|
||||
break;
|
||||
return true;
|
||||
#else
|
||||
break;
|
||||
#endif
|
||||
case IMAGE_TYPE_JPEG:
|
||||
#ifdef HAVE_RJPEG
|
||||
return true;
|
||||
#endif
|
||||
break;
|
||||
case IMAGE_TYPE_NONE:
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool image_transfer_is_valid(
|
||||
@ -89,6 +96,8 @@ bool image_transfer_is_valid(
|
||||
#else
|
||||
break;
|
||||
#endif
|
||||
case IMAGE_TYPE_NONE:
|
||||
break;
|
||||
}
|
||||
|
||||
return false;
|
||||
@ -111,6 +120,8 @@ void image_transfer_set_buffer_ptr(
|
||||
rjpeg_set_buf_ptr((rjpeg_t*)data, (uint8_t*)ptr);
|
||||
#endif
|
||||
break;
|
||||
case IMAGE_TYPE_NONE:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@ -140,6 +151,8 @@ int image_transfer_process(
|
||||
#else
|
||||
break;
|
||||
#endif
|
||||
case IMAGE_TYPE_NONE:
|
||||
break;
|
||||
}
|
||||
|
||||
return 0;
|
||||
@ -162,6 +175,8 @@ bool image_transfer_iterate(void *data, enum image_type_enum type)
|
||||
#else
|
||||
break;
|
||||
#endif
|
||||
case IMAGE_TYPE_NONE:
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
@ -42,7 +42,8 @@ struct texture_image
|
||||
|
||||
enum image_type_enum
|
||||
{
|
||||
IMAGE_TYPE_PNG = 0,
|
||||
IMAGE_TYPE_NONE = 0,
|
||||
IMAGE_TYPE_PNG,
|
||||
IMAGE_TYPE_JPEG
|
||||
};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user