fixed various minor warnings occuring under gcc, added corrections proposed in the forum
This commit is contained in:
parent
7546f19b51
commit
8a662fa4b1
|
@ -5,6 +5,11 @@ What's New for OpenJPEG
|
||||||
! : changed
|
! : changed
|
||||||
+ : added
|
+ : added
|
||||||
|
|
||||||
|
January 26, 2006
|
||||||
|
* [Herve Drolon] fixed various minor warnings occuring under gcc
|
||||||
|
* [__david__] fixed a segfault in codec/image_to_j2k.c & codec/j2k_to_image.c
|
||||||
|
* [__david__] fixed help option in codec/j2k_to_image & codec/image_to_j2k
|
||||||
|
|
||||||
January 25, 2006
|
January 25, 2006
|
||||||
! [Mathieu Malaterre] Sync with ITK repository, also add ref to doxygen
|
! [Mathieu Malaterre] Sync with ITK repository, also add ref to doxygen
|
||||||
! [Mathieu Malaterre] Add a lot of comments on the CMake build system
|
! [Mathieu Malaterre] Add a lot of comments on the CMake build system
|
||||||
|
|
|
@ -204,7 +204,7 @@ int get_file_format(char *filename) {
|
||||||
static const char *extension[] = {"pgx", "pnm", "pgm", "ppm", "bmp", "j2k", "jp2" };
|
static const char *extension[] = {"pgx", "pnm", "pgm", "ppm", "bmp", "j2k", "jp2" };
|
||||||
static const int format[] = { PGX_DFMT, PXM_DFMT, PXM_DFMT, PXM_DFMT, BMP_DFMT, J2K_CFMT, JP2_CFMT };
|
static const int format[] = { PGX_DFMT, PXM_DFMT, PXM_DFMT, PXM_DFMT, BMP_DFMT, J2K_CFMT, JP2_CFMT };
|
||||||
char * ext = strrchr(filename, '.') + 1;
|
char * ext = strrchr(filename, '.') + 1;
|
||||||
for(i = 0; i < sizeof(format); i++) {
|
for(i = 0; i < sizeof(format)/sizeof(*format); i++) {
|
||||||
if(strnicmp(ext, extension[i], 3) == 0) {
|
if(strnicmp(ext, extension[i], 3) == 0) {
|
||||||
return format[i];
|
return format[i];
|
||||||
}
|
}
|
||||||
|
@ -221,7 +221,7 @@ int parse_cmdline_encoder(int argc, char **argv, opj_cparameters_t *parameters)
|
||||||
/* parse the command line */
|
/* parse the command line */
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
int c = getopt(argc, argv, "i:o:r:q:f:t:n:c:b:x:p:s:d:h:P:S:E:M:R:T:C:I");
|
int c = getopt(argc, argv, "i:o:r:q:f:t:n:c:b:x:p:s:d:hP:S:E:M:R:T:C:I");
|
||||||
if (c == -1)
|
if (c == -1)
|
||||||
break;
|
break;
|
||||||
switch (c) {
|
switch (c) {
|
||||||
|
|
|
@ -92,7 +92,7 @@ int get_file_format(char *filename) {
|
||||||
static const int format[] = { PGX_DFMT, PXM_DFMT, PXM_DFMT, PXM_DFMT, BMP_DFMT, J2K_CFMT, JP2_CFMT, JPT_CFMT };
|
static const int format[] = { PGX_DFMT, PXM_DFMT, PXM_DFMT, PXM_DFMT, BMP_DFMT, J2K_CFMT, JP2_CFMT, JPT_CFMT };
|
||||||
char * ext = strrchr(filename, '.') + 1;
|
char * ext = strrchr(filename, '.') + 1;
|
||||||
if(ext) {
|
if(ext) {
|
||||||
for(i = 0; i < sizeof(format); i++) {
|
for(i = 0; i < sizeof(format)/sizeof(*format); i++) {
|
||||||
if(strnicmp(ext, extension[i], 3) == 0) {
|
if(strnicmp(ext, extension[i], 3) == 0) {
|
||||||
return format[i];
|
return format[i];
|
||||||
}
|
}
|
||||||
|
@ -108,7 +108,7 @@ int parse_cmdline_decoder(int argc, char **argv, opj_dparameters_t *parameters)
|
||||||
/* parse the command line */
|
/* parse the command line */
|
||||||
|
|
||||||
while (1) {
|
while (1) {
|
||||||
int c = getopt(argc, argv, "i:o:r:q:f:t:n:c:b:x:p:s:d:h:P:S:E:M:R:T:C:I");
|
int c = getopt(argc, argv, "i:o:r:q:f:t:n:c:b:x:p:s:d:hP:S:E:M:R:T:C:I");
|
||||||
if (c == -1)
|
if (c == -1)
|
||||||
break;
|
break;
|
||||||
switch (c) {
|
switch (c) {
|
||||||
|
|
|
@ -81,7 +81,7 @@ Read the FTYP box - File type box
|
||||||
@return Returns true if successful, returns false otherwise
|
@return Returns true if successful, returns false otherwise
|
||||||
*/
|
*/
|
||||||
static bool jp2_read_ftyp(opj_jp2_t *jp2, opj_cio_t *cio);
|
static bool jp2_read_ftyp(opj_jp2_t *jp2, opj_cio_t *cio);
|
||||||
static int jp2_write_jp2c(opj_jp2_t *jp2, opj_cio_t *cio, char *index);
|
static int jp2_write_jp2c(opj_jp2_t *jp2, opj_cio_t *cio, opj_image_t *image, char *index);
|
||||||
static bool jp2_read_jp2c(opj_jp2_t *jp2, opj_cio_t *cio, unsigned int *j2k_codestream_length, unsigned int *j2k_codestream_offset);
|
static bool jp2_read_jp2c(opj_jp2_t *jp2, opj_cio_t *cio, unsigned int *j2k_codestream_length, unsigned int *j2k_codestream_offset);
|
||||||
static void jp2_write_jp(opj_cio_t *cio);
|
static void jp2_write_jp(opj_cio_t *cio);
|
||||||
/**
|
/**
|
||||||
|
@ -414,12 +414,11 @@ static bool jp2_read_ftyp(opj_jp2_t *jp2, opj_cio_t *cio) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int jp2_write_jp2c(opj_jp2_t *jp2, opj_cio_t *cio, char *index) {
|
static int jp2_write_jp2c(opj_jp2_t *jp2, opj_cio_t *cio, opj_image_t *image, char *index) {
|
||||||
unsigned int j2k_codestream_offset, j2k_codestream_length;
|
unsigned int j2k_codestream_offset, j2k_codestream_length;
|
||||||
opj_jp2_box_t box;
|
opj_jp2_box_t box;
|
||||||
|
|
||||||
opj_j2k_t *j2k = jp2->j2k;
|
opj_j2k_t *j2k = jp2->j2k;
|
||||||
opj_image_t *image = jp2->image;
|
|
||||||
|
|
||||||
box.init_pos = cio_tell(cio);
|
box.init_pos = cio_tell(cio);
|
||||||
cio_skip(cio, 4);
|
cio_skip(cio, 4);
|
||||||
|
@ -635,8 +634,6 @@ void jp2_setup_encoder(opj_jp2_t *jp2, opj_cparameters_t *parameters, opj_image_
|
||||||
|
|
||||||
/* Image Header box */
|
/* Image Header box */
|
||||||
|
|
||||||
jp2->image = image;
|
|
||||||
|
|
||||||
jp2->numcomps = image->numcomps; /* NC */
|
jp2->numcomps = image->numcomps; /* NC */
|
||||||
jp2->comps = (opj_jp2_comps_t*) opj_malloc(jp2->numcomps * sizeof(opj_jp2_comps_t));
|
jp2->comps = (opj_jp2_comps_t*) opj_malloc(jp2->numcomps * sizeof(opj_jp2_comps_t));
|
||||||
jp2->h = image->y1 - image->y0; /* HEIGHT */
|
jp2->h = image->y1 - image->y0; /* HEIGHT */
|
||||||
|
@ -684,7 +681,6 @@ void jp2_setup_encoder(opj_jp2_t *jp2, opj_cparameters_t *parameters, opj_image_
|
||||||
}
|
}
|
||||||
|
|
||||||
bool jp2_encode(opj_jp2_t *jp2, opj_cio_t *cio, opj_image_t *image, char *index) {
|
bool jp2_encode(opj_jp2_t *jp2, opj_cio_t *cio, opj_image_t *image, char *index) {
|
||||||
(void)image;
|
|
||||||
|
|
||||||
/* JP2 encoding */
|
/* JP2 encoding */
|
||||||
|
|
||||||
|
@ -697,7 +693,7 @@ bool jp2_encode(opj_jp2_t *jp2, opj_cio_t *cio, opj_image_t *image, char *index)
|
||||||
|
|
||||||
/* J2K encoding */
|
/* J2K encoding */
|
||||||
|
|
||||||
if(!jp2_write_jp2c(jp2, cio, index)) {
|
if(!jp2_write_jp2c(jp2, cio, image, index)) {
|
||||||
opj_event_msg(jp2->cinfo, EVT_ERROR, "Failed to encode image\n");
|
opj_event_msg(jp2->cinfo, EVT_ERROR, "Failed to encode image\n");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -84,7 +84,6 @@ typedef struct opj_jp2 {
|
||||||
unsigned int numcl;
|
unsigned int numcl;
|
||||||
unsigned int *cl;
|
unsigned int *cl;
|
||||||
opj_jp2_comps_t *comps;
|
opj_jp2_comps_t *comps;
|
||||||
opj_image_t *image;
|
|
||||||
unsigned int j2k_codestream_offset;
|
unsigned int j2k_codestream_offset;
|
||||||
unsigned int j2k_codestream_length;
|
unsigned int j2k_codestream_length;
|
||||||
} opj_jp2_t;
|
} opj_jp2_t;
|
||||||
|
|
|
@ -52,6 +52,7 @@ opj_dinfo_t* opj_create_decompress(OPJ_CODEC_FORMAT format) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
default:
|
default:
|
||||||
opj_free(dinfo);
|
opj_free(dinfo);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -73,6 +74,9 @@ void opj_destroy_decompress(opj_dinfo_t *dinfo) {
|
||||||
case CODEC_JP2:
|
case CODEC_JP2:
|
||||||
jp2_destroy_decompress((opj_jp2_t*)dinfo->jp2_handle);
|
jp2_destroy_decompress((opj_jp2_t*)dinfo->jp2_handle);
|
||||||
break;
|
break;
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
/* destroy the decompressor */
|
/* destroy the decompressor */
|
||||||
opj_free(dinfo);
|
opj_free(dinfo);
|
||||||
|
@ -101,6 +105,9 @@ void opj_setup_decoder(opj_dinfo_t *dinfo, opj_dparameters_t *parameters) {
|
||||||
case CODEC_JP2:
|
case CODEC_JP2:
|
||||||
jp2_setup_decoder((opj_jp2_t*)dinfo->jp2_handle, parameters);
|
jp2_setup_decoder((opj_jp2_t*)dinfo->jp2_handle, parameters);
|
||||||
break;
|
break;
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -141,6 +148,8 @@ opj_cinfo_t* opj_create_compress(OPJ_CODEC_FORMAT format) {
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case CODEC_JPT:
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
default:
|
default:
|
||||||
opj_free(cinfo);
|
opj_free(cinfo);
|
||||||
return NULL;
|
return NULL;
|
||||||
|
@ -161,6 +170,10 @@ void opj_destroy_compress(opj_cinfo_t *cinfo) {
|
||||||
case CODEC_JP2:
|
case CODEC_JP2:
|
||||||
jp2_destroy_decompress((opj_jp2_t*)cinfo->jp2_handle);
|
jp2_destroy_decompress((opj_jp2_t*)cinfo->jp2_handle);
|
||||||
break;
|
break;
|
||||||
|
case CODEC_JPT:
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
/* destroy the decompressor */
|
/* destroy the decompressor */
|
||||||
opj_free(cinfo);
|
opj_free(cinfo);
|
||||||
|
@ -193,6 +206,10 @@ void opj_setup_encoder(opj_cinfo_t *cinfo, opj_cparameters_t *parameters, opj_im
|
||||||
case CODEC_JP2:
|
case CODEC_JP2:
|
||||||
jp2_setup_encoder((opj_jp2_t*)cinfo->jp2_handle, parameters, image);
|
jp2_setup_encoder((opj_jp2_t*)cinfo->jp2_handle, parameters, image);
|
||||||
break;
|
break;
|
||||||
|
case CODEC_JPT:
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -204,6 +221,10 @@ bool opj_encode(opj_cinfo_t *cinfo, opj_cio_t *cio, opj_image_t *image, char *in
|
||||||
return j2k_encode((opj_j2k_t*)cinfo->j2k_handle, cio, image, index);
|
return j2k_encode((opj_j2k_t*)cinfo->j2k_handle, cio, image, index);
|
||||||
case CODEC_JP2:
|
case CODEC_JP2:
|
||||||
return jp2_encode((opj_jp2_t*)cinfo->jp2_handle, cio, image, index);
|
return jp2_encode((opj_jp2_t*)cinfo->jp2_handle, cio, image, index);
|
||||||
|
case CODEC_JPT:
|
||||||
|
case CODEC_UNKNOWN:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -545,6 +545,8 @@ bool pi_next(opj_pi_iterator_t * pi) {
|
||||||
return pi_next_pcrl(pi);
|
return pi_next_pcrl(pi);
|
||||||
case CPRL:
|
case CPRL:
|
||||||
return pi_next_cprl(pi);
|
return pi_next_cprl(pi);
|
||||||
|
case PROG_UNKNOWN:
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|
Loading…
Reference in New Issue