From c9f4e1068eb2f6f5950949c9655592df814780cd Mon Sep 17 00:00:00 2001 From: Jiyong Min Date: Wed, 28 Feb 2018 08:33:03 +0900 Subject: [PATCH] Code Refactoring - remove inefficient functions to set PNG value Change-Id: I72a46e6ed9fa264a283ec1805751db5f5a6422fa Signed-off-by: Jiyong Min --- png/include/mm_util_png.h | 43 ++-------------------------------------- png/mm_util_png.c | 27 +++++++------------------ png/test/mm_util_png_testsuite.c | 18 +++++++---------- 3 files changed, 16 insertions(+), 72 deletions(-) diff --git a/png/include/mm_util_png.h b/png/include/mm_util_png.h index b5a3417..d56d0e0 100755 --- a/png/include/mm_util_png.h +++ b/png/include/mm_util_png.h @@ -122,7 +122,7 @@ void mm_util_init_decode_png(mm_util_png_data * data); * @see mm_util_png_data, mm_util_init_encode_png * @since R1, 1.0 */ -int mm_util_encode_to_png_file(void **data, mm_util_png_data * encoded, const char *fpath); +int mm_util_encode_to_png_file(void **data, mm_util_png_data * encoded, const char *fpath, mm_util_png_compression compression_level); /** * This function extracts raw data to memory @@ -136,7 +136,7 @@ int mm_util_encode_to_png_file(void **data, mm_util_png_data * encoded, const ch * @see mm_util_png_data, mm_util_init_encode_png * @since R1, 1.0 */ -int mm_util_encode_to_png_memory(void **data, mm_util_png_data * encoded); +int mm_util_encode_to_png_memory(void **data, mm_util_png_data * encoded, mm_util_png_compression compression_level); /** * This function initializes the values of mm_util_png. @@ -150,45 +150,6 @@ int mm_util_encode_to_png_memory(void **data, mm_util_png_data * encoded); */ void mm_util_init_encode_png(mm_util_png_data * data); -/** - * This function sets compression level of encoding. - * This function should be called after mm_util_init_encode_png. - * - * @param data [in] pointer of mm_util_png_data. - * @param compression_level [in] Level of compression while encoding. - * @return None. - * @remark Check mm_util_png_compression for valid values - * @see mm_util_png, mm_util_png_data, mm_util_init_encode_png - * @since R1, 1.0 - */ -void mm_util_png_encode_set_compression_level(mm_util_png_data * data, mm_util_png_compression compression_level); - -/** - * This function sets width of the encoded image. - * This function should be called after mm_util_init_encode_png. - * - * @param data [in] pointer of mm_util_png_data. - * @param width [in] width of the encoded image. - * @return None. - * @remark - * @see mm_util_png_data, mm_util_init_encode_png - * @since R1, 1.0 - */ -void mm_util_png_encode_set_width(mm_util_png_data * data, uint32_t width); - -/** - * This function sets height of the encoded image. - * This function should be called after mm_util_init_encode_png. - * - * @param data [in] pointer of mm_util_png_data. - * @param height [in] height of the encoded image. - * @return None. - * @remark - * @see mm_util_png_data, mm_util_init_encode_png - * @since R1, 1.0 - */ -void mm_util_png_encode_set_height(mm_util_png_data * data, uint32_t height); - #ifdef __cplusplus } #endif diff --git a/png/mm_util_png.c b/png/mm_util_png.c index c905ac8..eb87f04 100755 --- a/png/mm_util_png.c +++ b/png/mm_util_png.c @@ -235,7 +235,7 @@ static void user_write_data(png_structp png_ptr, png_bytep data, png_uint_32 len } } -int write_png(void **data, mm_util_png_data *encoded, FILE *fp) +int write_png(void **data, mm_util_png_data *encoded, FILE *fp, mm_util_png_compression compression_level) { png_structp png_ptr; png_infop info_ptr; @@ -245,6 +245,7 @@ int write_png(void **data, mm_util_png_data *encoded, FILE *fp) mm_util_debug("write_png"); encoded->data = NULL; encoded->size = 0; + encoded->png.compression_level = compression_level; png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, (png_voidp) NULL, __user_error_fn, __user_warning_fn); @@ -308,7 +309,7 @@ int write_png(void **data, mm_util_png_data *encoded, FILE *fp) return MM_UTIL_ERROR_NONE; } -int mm_util_encode_to_png_file(void **data, mm_util_png_data *encoded, const char *fpath) +int mm_util_encode_to_png_file(void **data, mm_util_png_data *encoded, const char *fpath, mm_util_png_compression compression_level) { int ret = MM_UTIL_ERROR_NONE; FILE *fp; @@ -323,17 +324,18 @@ int mm_util_encode_to_png_file(void **data, mm_util_png_data *encoded, const cha return ret; } - ret = write_png(data, encoded, fp); + ret = write_png(data, encoded, fp, compression_level); return ret; } -int mm_util_encode_to_png_memory(void **data, mm_util_png_data *encoded) +int mm_util_encode_to_png_memory(void **data, mm_util_png_data *encoded, mm_util_png_compression compression_level) { int ret; mm_util_debug("mm_util_encode_to_memory"); - ret = write_png(data, encoded, NULL); + + ret = write_png(data, encoded, NULL, compression_level); return ret; } @@ -348,18 +350,3 @@ void mm_util_init_encode_png(mm_util_png_data *data) data->png.interlace_type = PNG_INTERLACE_NONE; data->png.bit_depth = MM_UTIL_BIT_DEPTH_8; } - -void mm_util_png_encode_set_compression_level(mm_util_png_data *data, mm_util_png_compression compression_level) -{ - data->png.compression_level = compression_level; -} - -void mm_util_png_encode_set_width(mm_util_png_data *data, uint32_t width) -{ - data->width = width; -} - -void mm_util_png_encode_set_height(mm_util_png_data *data, uint32_t height) -{ - data->height = height; -} diff --git a/png/test/mm_util_png_testsuite.c b/png/test/mm_util_png_testsuite.c index a1dad4b..79dfe5f 100755 --- a/png/test/mm_util_png_testsuite.c +++ b/png/test/mm_util_png_testsuite.c @@ -128,6 +128,7 @@ int main(int argc, char *argv[]) void *data; void *src = NULL; int src_size = 0; + mm_util_png_compression compression = MM_UTIL_COMPRESSION_6; /* default */ if (argc < 2) { fprintf(stderr, "\t[usage]\n"); @@ -137,12 +138,6 @@ int main(int argc, char *argv[]) if (!strcmp("decode", argv[1])) { mm_util_init_decode_png(&decoded_data); - if (argv[3]) { -#if 0 - mm_util_png_decode_set_progressive(&decoded_data, atoi(argv[3])); - mm_util_png_decode_set_progressive_bytes(&decoded_data, 10000); -#endif - } ret = mm_util_decode_from_png_file(&decoded_data, argv[2]); } else if (!strcmp("decode-mem", argv[1])) { if (_read_file(argv[2], &src, &src_size)) { @@ -177,17 +172,18 @@ int main(int argc, char *argv[]) mm_util_init_encode_png(&encoded_data); if (argv[3]) - mm_util_png_encode_set_compression_level(&encoded_data, atoi(argv[3])); - mm_util_png_encode_set_width(&encoded_data, decoded_data.width); - mm_util_png_encode_set_height(&encoded_data, decoded_data.height); + compression = atoi(argv[3]); + + encoded_data.width = decoded_data.width; + encoded_data.height = decoded_data.height; if (!strcmp("decode", argv[1])) { - ret = mm_util_encode_to_png_memory(&data, &encoded_data); + ret = mm_util_encode_to_png_memory(&data, &encoded_data, compression); fprintf(stderr, "Finished encoding encoded_data.size %lu\n", (long unsigned int)encoded_data.size); _write_file(filename, encoded_data.data, encoded_data.size); free(encoded_data.data); } else if (!strcmp("decode-mem", argv[1])) { - ret = mm_util_encode_to_png_file(&data, &encoded_data, filename); + ret = mm_util_encode_to_png_file(&data, &encoded_data, filename, compression); } free(decoded_data.data); free(data); -- 2.7.4