1 /***************************************************************************
3 * Open \______ \ ____ ____ | | _\_ |__ _______ ___
4 * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
5 * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
6 * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
10 * Copyright (C) 2009 by Andrew Mahone
12 * This is a wrapper for the core jpeg_load.c
14 * This program is free software; you can redistribute it and/or
15 * modify it under the terms of the GNU General Public License
16 * as published by the Free Software Foundation; either version 2
17 * of the License, or (at your option) any later version.
19 * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
20 * KIND, either express or implied.
22 ****************************************************************************/
25 #include "feature_wrappers.h"
26 #include "read_image.h"
28 int read_image_file(const char* filename
, struct bitmap
*bm
, int maxsize
,
29 int format
, const struct custom_format
*cformat
)
31 int namelen
= rb
->strlen(filename
);
32 if (rb
->strcmp(filename
+ namelen
- 4, ".bmp"))
33 return read_jpeg_file(filename
, bm
, maxsize
, format
, cformat
);
35 return scaled_read_bmp_file(filename
, bm
, maxsize
, format
, cformat
);
38 int read_image_file_offset(int offset
, const char* filename
, struct bitmap
*bm
,
39 int maxsize
, int format
,
40 const struct custom_format
*cformat
)
42 int fd
= rb
->open(filename
, O_RDONLY
);
45 if (offset
!= rb
->lseek(fd
, offset
, SEEK_SET
))
47 int namelen
= rb
->strlen(filename
);
48 if (rb
->strcmp(filename
+ namelen
- 4, ".bmp"))
49 return read_jpeg_fd(fd
, bm
, maxsize
, format
, cformat
);
51 return scaled_read_bmp_fd(fd
, bm
, maxsize
, format
, cformat
);