summaryrefslogtreecommitdiff
path: root/src/lib/openjp2
diff options
context:
space:
mode:
authorMathieu Malaterre <mathieu.malaterre@gmail.com>2012-10-15 09:44:34 +0000
committerMathieu Malaterre <mathieu.malaterre@gmail.com>2012-10-15 09:44:34 +0000
commitdff377a741ec87f8737002cf112ae12655881777 (patch)
tree24fec645259014dc1e60f393d5d39c2b36aa603c /src/lib/openjp2
parentb24cf8d1574c00915c568314d3e0e011ca77ba89 (diff)
[trunk] Fix compilation:
- using mingw32 compiler (missing exported symbols) - using -fvisibility=hidden (gcc on UNIX)
Diffstat (limited to 'src/lib/openjp2')
-rw-r--r--src/lib/openjp2/CMakeLists.txt2
-rw-r--r--src/lib/openjp2/cio.c28
-rw-r--r--src/lib/openjp2/cio.h28
-rw-r--r--src/lib/openjp2/event.c4
-rw-r--r--src/lib/openjp2/event.h4
-rw-r--r--src/lib/openjp2/function_list.c8
-rw-r--r--src/lib/openjp2/function_list.h8
-rw-r--r--src/lib/openjp2/j2k.c4
-rw-r--r--src/lib/openjp2/j2k.h4
-rw-r--r--src/lib/openjp2/jp2.c14
-rw-r--r--src/lib/openjp2/jp2.h14
11 files changed, 59 insertions, 59 deletions
diff --git a/src/lib/openjp2/CMakeLists.txt b/src/lib/openjp2/CMakeLists.txt
index 566ec56b..66ef044d 100644
--- a/src/lib/openjp2/CMakeLists.txt
+++ b/src/lib/openjp2/CMakeLists.txt
@@ -28,7 +28,7 @@ set(OPENJPEG_SRCS
${CMAKE_CURRENT_SOURCE_DIR}/t2.c
${CMAKE_CURRENT_SOURCE_DIR}/tcd.c
${CMAKE_CURRENT_SOURCE_DIR}/tgt.c
- ${CMAKE_CURRENT_SOURCE_DIR}/function_list.c
+ ${CMAKE_CURRENT_SOURCE_DIR}/function_list.c
)
# Build the library
diff --git a/src/lib/openjp2/cio.c b/src/lib/openjp2/cio.c
index 93f488c2..5b2edd49 100644
--- a/src/lib/openjp2/cio.c
+++ b/src/lib/openjp2/cio.c
@@ -154,7 +154,7 @@ unsigned char cio_bytein(opj_cio_t *cio) {
* v : value to write
* n : number of bytes to write
*/
-unsigned int cio_write(opj_cio_t *cio, unsigned long long int v, int n) {
+unsigned int OPJ_CALLCONV cio_write(opj_cio_t *cio, unsigned long long int v, int n) {
int i;
for (i = n - 1; i >= 0; i--) {
if( !cio_byteout(cio, (unsigned char) ((v >> (i << 3)) & 0xff)) )
@@ -171,7 +171,7 @@ unsigned int cio_write(opj_cio_t *cio, unsigned long long int v, int n) {
*
* return : value of the n bytes read
*/
-unsigned int cio_read(opj_cio_t *cio, int n) {
+unsigned int OPJ_CALLCONV cio_read(opj_cio_t *cio, int n) {
int i;
unsigned int v = 0;
for (i = n - 1; i >= 0; i--) {
@@ -186,13 +186,13 @@ unsigned int cio_read(opj_cio_t *cio, int n) {
*
* n : number of bytes to skip
*/
-void cio_skip(opj_cio_t *cio, int n) {
+void OPJ_CALLCONV cio_skip(opj_cio_t *cio, int n) {
cio->bp += n;
}
/* ----------------------------------------------------------------------- */
-void opj_write_bytes_BE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes)
+void OPJ_CALLCONV opj_write_bytes_BE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes)
{
const OPJ_BYTE * l_data_ptr = ((const OPJ_BYTE *) &p_value) + p_nb_bytes;
@@ -201,7 +201,7 @@ void opj_write_bytes_BE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_n
memcpy(p_buffer,l_data_ptr,p_nb_bytes);
}
-void opj_write_bytes_LE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes)
+void OPJ_CALLCONV opj_write_bytes_LE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes)
{
const OPJ_BYTE * l_data_ptr = ((const OPJ_BYTE *) &p_value) + p_nb_bytes - 1;
OPJ_UINT32 i;
@@ -213,7 +213,7 @@ void opj_write_bytes_LE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_n
}
}
-void opj_read_bytes_BE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes)
+void OPJ_CALLCONV opj_read_bytes_BE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes)
{
OPJ_BYTE * l_data_ptr = ((OPJ_BYTE *) p_value);
@@ -223,7 +223,7 @@ void opj_read_bytes_BE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT
memcpy(l_data_ptr+4-p_nb_bytes,p_buffer,p_nb_bytes);
}
-void opj_read_bytes_LE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes)
+void OPJ_CALLCONV opj_read_bytes_LE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes)
{
OPJ_BYTE * l_data_ptr = ((OPJ_BYTE *) p_value) + p_nb_bytes-1;
OPJ_UINT32 i;
@@ -242,7 +242,7 @@ void opj_write_double_BE(OPJ_BYTE * p_buffer, OPJ_FLOAT64 p_value)
memcpy(p_buffer,l_data_ptr,sizeof(OPJ_FLOAT64));
}
-void opj_write_double_LE(OPJ_BYTE * p_buffer, OPJ_FLOAT64 p_value)
+void OPJ_CALLCONV opj_write_double_LE(OPJ_BYTE * p_buffer, OPJ_FLOAT64 p_value)
{
const OPJ_BYTE * l_data_ptr = ((const OPJ_BYTE *) &p_value) + sizeof(OPJ_FLOAT64) - 1;
OPJ_UINT32 i;
@@ -404,7 +404,7 @@ OPJ_API void OPJ_CALLCONV opj_stream_set_user_data_length(opj_stream_t* p_stream
l_stream->m_user_data_length = data_length;
}
-OPJ_SIZE_T opj_stream_read_data (opj_stream_private_t * p_stream,OPJ_BYTE * p_buffer, OPJ_SIZE_T p_size, opj_event_mgr_t * p_event_mgr)
+OPJ_SIZE_T OPJ_CALLCONV opj_stream_read_data (opj_stream_private_t * p_stream,OPJ_BYTE * p_buffer, OPJ_SIZE_T p_size, opj_event_mgr_t * p_event_mgr)
{
OPJ_SIZE_T l_read_nb_bytes = 0;
if (p_stream->m_bytes_in_buffer >= p_size) {
@@ -511,7 +511,7 @@ OPJ_SIZE_T opj_stream_read_data (opj_stream_private_t * p_stream,OPJ_BYTE * p_bu
}
}
-OPJ_SIZE_T opj_stream_write_data (opj_stream_private_t * p_stream,
+OPJ_SIZE_T OPJ_CALLCONV opj_stream_write_data (opj_stream_private_t * p_stream,
const OPJ_BYTE * p_buffer,
OPJ_SIZE_T p_size,
opj_event_mgr_t * p_event_mgr)
@@ -683,7 +683,7 @@ OPJ_OFF_T opj_stream_write_skip (opj_stream_private_t * p_stream, OPJ_OFF_T p_si
return l_skip_nb_bytes;
}
-OPJ_OFF_T opj_stream_tell (const opj_stream_private_t * p_stream)
+OPJ_OFF_T OPJ_CALLCONV opj_stream_tell (const opj_stream_private_t * p_stream)
{
return p_stream->m_byte_offset;
}
@@ -697,7 +697,7 @@ OPJ_OFF_T opj_stream_get_number_byte_left (const opj_stream_private_t * p_stream
0;
}
-OPJ_OFF_T opj_stream_skip (opj_stream_private_t * p_stream, OPJ_OFF_T p_size, opj_event_mgr_t * p_event_mgr)
+OPJ_OFF_T OPJ_CALLCONV opj_stream_skip (opj_stream_private_t * p_stream, OPJ_OFF_T p_size, opj_event_mgr_t * p_event_mgr)
{
assert(p_size >= 0);
return p_stream->m_opj_skip(p_stream,p_size,p_event_mgr);
@@ -744,13 +744,13 @@ opj_bool opj_stream_write_seek (opj_stream_private_t * p_stream, OPJ_OFF_T p_siz
return OPJ_TRUE;
}
-opj_bool opj_stream_seek (opj_stream_private_t * p_stream, OPJ_OFF_T p_size, struct opj_event_mgr * p_event_mgr)
+opj_bool OPJ_CALLCONV opj_stream_seek (opj_stream_private_t * p_stream, OPJ_OFF_T p_size, struct opj_event_mgr * p_event_mgr)
{
assert(p_size >= 0);
return p_stream->m_opj_seek(p_stream,p_size,p_event_mgr);
}
-opj_bool opj_stream_has_seek (const opj_stream_private_t * p_stream)
+opj_bool OPJ_CALLCONV opj_stream_has_seek (const opj_stream_private_t * p_stream)
{
return p_stream->m_seek_fn != opj_stream_default_seek;
}
diff --git a/src/lib/openjp2/cio.h b/src/lib/openjp2/cio.h
index f5c4a862..08063d1d 100644
--- a/src/lib/openjp2/cio.h
+++ b/src/lib/openjp2/cio.h
@@ -71,20 +71,20 @@ Write some bytes
@param n Number of bytes to write
@return Returns the number of bytes written or 0 if an error occured
*/
-unsigned int cio_write(opj_cio_t *cio, unsigned long long int v, int n);
+OPJ_API unsigned int OPJ_CALLCONV cio_write(opj_cio_t *cio, unsigned long long int v, int n);
/**
Read some bytes
@param cio CIO handle
@param n Number of bytes to read
@return Returns the value of the n bytes read
*/
-unsigned int cio_read(opj_cio_t *cio, int n);
+OPJ_API unsigned int OPJ_CALLCONV cio_read(opj_cio_t *cio, int n);
/**
Skip some bytes
@param cio CIO handle
@param n Number of bytes to skip
*/
-void cio_skip(opj_cio_t *cio, int n);
+OPJ_API void OPJ_CALLCONV cio_skip(opj_cio_t *cio, int n);
/* ----------------------------------------------------------------------- */
/*@}*/
@@ -206,7 +206,7 @@ opj_stream_private_t;
* @param p_value the value to write
* @param p_nb_bytes the number of bytes to write
*/
-void opj_write_bytes_BE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes);
+OPJ_API void OPJ_CALLCONV opj_write_bytes_BE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes);
/**
* Reads some bytes from the given data buffer, this function is used in Big Endian cpus.
@@ -215,7 +215,7 @@ void opj_write_bytes_BE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_n
* @param p_nb_bytes the nb bytes to read.
* @return the number of bytes read or -1 if an error occured.
*/
-void opj_read_bytes_BE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes);
+OPJ_API void OPJ_CALLCONV opj_read_bytes_BE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes);
/**
* Write some bytes to the given data buffer, this function is used in Little Endian cpus.
@@ -224,7 +224,7 @@ void opj_read_bytes_BE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT
* @param p_nb_bytes the number of bytes to write
* @return the number of bytes written or -1 if an error occured
*/
-void opj_write_bytes_LE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes);
+OPJ_API void OPJ_CALLCONV opj_write_bytes_LE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_nb_bytes);
/**
* Reads some bytes from the given data buffer, this function is used in Little Endian cpus.
@@ -233,7 +233,7 @@ void opj_write_bytes_LE (OPJ_BYTE * p_buffer, OPJ_UINT32 p_value, OPJ_UINT32 p_n
* @param p_nb_bytes the nb bytes to read.
* @return the number of bytes read or -1 if an error occured.
*/
-void opj_read_bytes_LE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes);
+OPJ_API void OPJ_CALLCONV opj_read_bytes_LE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT32 p_nb_bytes);
/**
@@ -241,7 +241,7 @@ void opj_read_bytes_LE(const OPJ_BYTE * p_buffer, OPJ_UINT32 * p_value, OPJ_UINT
* @param p_buffer pointer the data buffer to write data to.
* @param p_value the value to write
*/
-void opj_write_double_LE(OPJ_BYTE * p_buffer, OPJ_FLOAT64 p_value);
+OPJ_API void OPJ_CALLCONV opj_write_double_LE(OPJ_BYTE * p_buffer, OPJ_FLOAT64 p_value);
/***
* Write some bytes to the given data buffer, this function is used in Big Endian cpus.
@@ -300,7 +300,7 @@ void opj_write_float_BE(OPJ_BYTE * p_buffer, OPJ_FLOAT32 p_value);
* @param p_event_mgr the user event manager to be notified of special events.
* @return the number of bytes read, or -1 if an error occured or if the stream is at the end.
*/
-OPJ_SIZE_T opj_stream_read_data (opj_stream_private_t * p_stream,OPJ_BYTE * p_buffer, OPJ_SIZE_T p_size, struct opj_event_mgr * p_event_mgr);
+OPJ_API OPJ_SIZE_T OPJ_CALLCONV opj_stream_read_data (opj_stream_private_t * p_stream,OPJ_BYTE * p_buffer, OPJ_SIZE_T p_size, struct opj_event_mgr * p_event_mgr);
/**
* Writes some bytes to the stream.
@@ -310,7 +310,7 @@ OPJ_SIZE_T opj_stream_read_data (opj_stream_private_t * p_stream,OPJ_BYTE * p_bu
* @param p_event_mgr the user event manager to be notified of special events.
* @return the number of bytes writtent, or -1 if an error occured.
*/
-OPJ_SIZE_T opj_stream_write_data (opj_stream_private_t * p_stream,const OPJ_BYTE * p_buffer, OPJ_SIZE_T p_size, struct opj_event_mgr * p_event_mgr);
+OPJ_API OPJ_SIZE_T OPJ_CALLCONV opj_stream_write_data (opj_stream_private_t * p_stream,const OPJ_BYTE * p_buffer, OPJ_SIZE_T p_size, struct opj_event_mgr * p_event_mgr);
/**
* Writes the content of the stream buffer to the stream.
@@ -327,7 +327,7 @@ opj_bool opj_stream_flush (opj_stream_private_t * p_stream, struct opj_event_mgr
* @param p_event_mgr the user event manager to be notified of special events.
* @return the number of bytes skipped, or -1 if an error occured.
*/
-OPJ_OFF_T opj_stream_skip (opj_stream_private_t * p_stream,OPJ_OFF_T p_size, struct opj_event_mgr * p_event_mgr);
+OPJ_API OPJ_OFF_T OPJ_CALLCONV opj_stream_skip (opj_stream_private_t * p_stream,OPJ_OFF_T p_size, struct opj_event_mgr * p_event_mgr);
/**
* Tells the byte offset on the stream (similar to ftell).
@@ -336,7 +336,7 @@ OPJ_OFF_T opj_stream_skip (opj_stream_private_t * p_stream,OPJ_OFF_T p_size, str
*
* @return the current position o fthe stream.
*/
-OPJ_OFF_T opj_stream_tell (const opj_stream_private_t * p_stream);
+OPJ_API OPJ_OFF_T OPJ_CALLCONV opj_stream_tell (const opj_stream_private_t * p_stream);
/**
@@ -391,12 +391,12 @@ opj_bool opj_stream_write_seek (opj_stream_private_t * p_stream, OPJ_OFF_T p_siz
* @param p_event_mgr the user event manager to be notified of special events.
* @return true if the stream is seekable.
*/
-opj_bool opj_stream_seek (opj_stream_private_t * p_stream, OPJ_OFF_T p_size, struct opj_event_mgr * p_event_mgr);
+OPJ_API opj_bool OPJ_CALLCONV opj_stream_seek (opj_stream_private_t * p_stream, OPJ_OFF_T p_size, struct opj_event_mgr * p_event_mgr);
/**
* Tells if the given stream is seekable.
*/
-opj_bool opj_stream_has_seek (const opj_stream_private_t * p_stream);
+OPJ_API opj_bool OPJ_CALLCONV opj_stream_has_seek (const opj_stream_private_t * p_stream);
OPJ_SIZE_T opj_stream_default_read (void * p_buffer, OPJ_SIZE_T p_nb_bytes, void * p_user_data);
OPJ_SIZE_T opj_stream_default_write (void * p_buffer, OPJ_SIZE_T p_nb_bytes, void * p_user_data);
diff --git a/src/lib/openjp2/event.c b/src/lib/openjp2/event.c
index fa505619..cfc68c19 100644
--- a/src/lib/openjp2/event.c
+++ b/src/lib/openjp2/event.c
@@ -117,7 +117,7 @@ opj_bool opj_event_msg(opj_common_ptr cinfo, int event_type, const char *fmt, ..
}
/* ----------------------------------------------------------------------- */
-opj_bool opj_event_msg_v2(opj_event_mgr_t* p_event_mgr, int event_type, const char *fmt, ...) {
+opj_bool OPJ_CALLCONV opj_event_msg_v2(opj_event_mgr_t* p_event_mgr, int event_type, const char *fmt, ...) {
#define MSG_SIZE 512 /* 512 bytes should be more than enough for a short message */
opj_msg_callback msg_handler = 00;
void * l_data = 00;
@@ -167,7 +167,7 @@ opj_bool opj_event_msg_v2(opj_event_mgr_t* p_event_mgr, int event_type, const ch
return OPJ_TRUE;
}
-void opj_set_default_event_handler(opj_event_mgr_t * p_manager)
+void OPJ_CALLCONV opj_set_default_event_handler(opj_event_mgr_t * p_manager)
{
p_manager->m_error_data = 00;
p_manager->m_warning_data = 00;
diff --git a/src/lib/openjp2/event.h b/src/lib/openjp2/event.h
index 111cea9f..98543b5d 100644
--- a/src/lib/openjp2/event.h
+++ b/src/lib/openjp2/event.h
@@ -89,13 +89,13 @@ opj_bool opj_event_msg(opj_common_ptr cinfo, int event_type, const char *fmt, ..
*
* @return Returns true if successful, returns false otherwise
*/
-opj_bool opj_event_msg_v2(opj_event_mgr_t* event_mgr, int event_type, const char *fmt, ...);
+OPJ_API opj_bool OPJ_CALLCONV opj_event_msg_v2(opj_event_mgr_t* event_mgr, int event_type, const char *fmt, ...);
/* ----------------------------------------------------------------------- */
/**
* Set the event manager with the default callback function for the 3 levels.
*/
-void opj_set_default_event_handler(opj_event_mgr_t * p_manager);
+OPJ_API void OPJ_CALLCONV opj_set_default_event_handler(opj_event_mgr_t * p_manager);
/*@}*/
diff --git a/src/lib/openjp2/function_list.c b/src/lib/openjp2/function_list.c
index 1f84a429..4b4b0a83 100644
--- a/src/lib/openjp2/function_list.c
+++ b/src/lib/openjp2/function_list.c
@@ -67,7 +67,7 @@ void opj_procedure_list_destroy(opj_procedure_list_t * p_list)
opj_free(p_list);
}
-opj_bool opj_procedure_list_add_procedure (opj_procedure_list_t * p_validation_list, opj_procedure p_procedure)
+opj_bool OPJ_CALLCONV opj_procedure_list_add_procedure (opj_procedure_list_t * p_validation_list, opj_procedure p_procedure)
{
if (p_validation_list->m_nb_max_procedures == p_validation_list->m_nb_procedures)
{
@@ -98,17 +98,17 @@ opj_bool opj_procedure_list_add_procedure (opj_procedure_list_t * p_validation_
return OPJ_TRUE;
}
-OPJ_UINT32 opj_procedure_list_get_nb_procedures (opj_procedure_list_t * p_validation_list)
+OPJ_UINT32 OPJ_CALLCONV opj_procedure_list_get_nb_procedures (opj_procedure_list_t * p_validation_list)
{
return p_validation_list->m_nb_procedures;
}
-opj_procedure* opj_procedure_list_get_first_procedure (opj_procedure_list_t * p_validation_list)
+opj_procedure* OPJ_CALLCONV opj_procedure_list_get_first_procedure (opj_procedure_list_t * p_validation_list)
{
return p_validation_list->m_procedures;
}
-void opj_procedure_list_clear (opj_procedure_list_t * p_validation_list)
+void OPJ_CALLCONV opj_procedure_list_clear (opj_procedure_list_t * p_validation_list)
{
p_validation_list->m_nb_procedures = 0;
}
diff --git a/src/lib/openjp2/function_list.h b/src/lib/openjp2/function_list.h
index f67aa5f2..0e27d75a 100644
--- a/src/lib/openjp2/function_list.h
+++ b/src/lib/openjp2/function_list.h
@@ -90,7 +90,7 @@ void opj_procedure_list_destroy(opj_procedure_list_t * p_list);
*
* @return OPJ_FALSE if the procedure could ne added.
*/
-opj_bool opj_procedure_list_add_procedure (opj_procedure_list_t * p_validation_list, opj_procedure p_procedure);
+OPJ_API opj_bool OPJ_CALLCONV opj_procedure_list_add_procedure (opj_procedure_list_t * p_validation_list, opj_procedure p_procedure);
/**
* Gets the number of validation procedures.
@@ -99,7 +99,7 @@ opj_bool opj_procedure_list_add_procedure (opj_procedure_list_t * p_validation_l
*
* @return the number of validation procedures.
*/
-OPJ_UINT32 opj_procedure_list_get_nb_procedures (opj_procedure_list_t * p_validation_list);
+OPJ_API OPJ_UINT32 OPJ_CALLCONV opj_procedure_list_get_nb_procedures (opj_procedure_list_t * p_validation_list);
/**
* Gets the pointer on the first validation procedure. This function is similar to the C++
@@ -110,7 +110,7 @@ OPJ_UINT32 opj_procedure_list_get_nb_procedures (opj_procedure_list_t * p_valida
*
* @return a pointer to the first procedure.
*/
-opj_procedure* opj_procedure_list_get_first_procedure (opj_procedure_list_t * p_validation_list);
+OPJ_API opj_procedure* OPJ_CALLCONV opj_procedure_list_get_first_procedure (opj_procedure_list_t * p_validation_list);
/**
@@ -119,7 +119,7 @@ opj_procedure* opj_procedure_list_get_first_procedure (opj_procedure_list_t * p_
* @param p_validation_list the list of procedure to clear.
*
*/
-void opj_procedure_list_clear (opj_procedure_list_t * p_validation_list);
+OPJ_API void OPJ_CALLCONV opj_procedure_list_clear (opj_procedure_list_t * p_validation_list);
/*@}*/
#endif /* __FUNCTION_LIST_H */
diff --git a/src/lib/openjp2/j2k.c b/src/lib/openjp2/j2k.c
index 6f1b16e1..5481a6c6 100644
--- a/src/lib/openjp2/j2k.c
+++ b/src/lib/openjp2/j2k.c
@@ -9061,7 +9061,7 @@ opj_bool opj_j2k_encode_v2( opj_j2k_v2_t * p_j2k,
return OPJ_TRUE;
}
-opj_bool opj_j2k_end_compress( opj_j2k_v2_t *p_j2k,
+opj_bool OPJ_CALLCONV opj_j2k_end_compress( opj_j2k_v2_t *p_j2k,
opj_stream_private_t *p_stream,
opj_event_mgr_t * p_manager)
{
@@ -9076,7 +9076,7 @@ opj_bool opj_j2k_end_compress( opj_j2k_v2_t *p_j2k,
return OPJ_TRUE;
}
-opj_bool opj_j2k_start_compress(opj_j2k_v2_t *p_j2k,
+OPJ_API opj_bool OPJ_CALLCONV opj_j2k_start_compress(opj_j2k_v2_t *p_j2k,
opj_stream_private_t *p_stream,
opj_image_t * p_image,
opj_event_mgr_t * p_manager)
diff --git a/src/lib/openjp2/j2k.h b/src/lib/openjp2/j2k.h
index 2782a096..4366fc43 100644
--- a/src/lib/openjp2/j2k.h
+++ b/src/lib/openjp2/j2k.h
@@ -1024,7 +1024,7 @@ opj_bool opj_j2k_encode_v2( opj_j2k_v2_t * p_j2k,
*
* @return true if the codec is valid.
*/
-opj_bool opj_j2k_start_compress(opj_j2k_v2_t *p_j2k,
+opj_bool OPJ_CALLCONV opj_j2k_start_compress(opj_j2k_v2_t *p_j2k,
opj_stream_private_t *p_stream,
opj_image_t * p_image,
opj_event_mgr_t * p_manager);
@@ -1033,7 +1033,7 @@ opj_bool opj_j2k_start_compress(opj_j2k_v2_t *p_j2k,
* Ends the compression procedures and possibiliy add data to be read after the
* codestream.
*/
-opj_bool opj_j2k_end_compress( opj_j2k_v2_t *p_j2k,
+OPJ_API opj_bool OPJ_CALLCONV opj_j2k_end_compress( opj_j2k_v2_t *p_j2k,
opj_stream_private_t *cio,
opj_event_mgr_t * p_manager);
diff --git a/src/lib/openjp2/jp2.c b/src/lib/openjp2/jp2.c
index d74583e4..198c0e56 100644
--- a/src/lib/openjp2/jp2.c
+++ b/src/lib/openjp2/jp2.c
@@ -1108,7 +1108,7 @@ opj_bool opj_jp2_decode(opj_jp2_v2_t *jp2,
return OPJ_TRUE;
}
-opj_bool opj_jp2_write_jp2h(opj_jp2_v2_t *jp2,
+opj_bool OPJ_CALLCONV opj_jp2_write_jp2h(opj_jp2_v2_t *jp2,
opj_stream_private_t *stream,
opj_event_mgr_t * p_manager
)
@@ -1339,7 +1339,7 @@ void opj_jp2_setup_decoder(opj_jp2_v2_t *jp2, opj_dparameters_t *parameters)
/* JP2 encoder interface */
/* ----------------------------------------------------------------------- */
-void opj_jp2_setup_encoder( opj_jp2_v2_t *jp2,
+void OPJ_CALLCONV opj_jp2_setup_encoder( opj_jp2_v2_t *jp2,
opj_cparameters_t *parameters,
opj_image_t *image,
opj_event_mgr_t * p_manager)
@@ -1417,7 +1417,7 @@ void opj_jp2_setup_encoder( opj_jp2_v2_t *jp2,
jp2->approx = 0; /* APPROX */
}
-opj_bool opj_jp2_encode(opj_jp2_v2_t *jp2,
+opj_bool OPJ_CALLCONV opj_jp2_encode(opj_jp2_v2_t *jp2,
opj_stream_private_t *stream,
opj_event_mgr_t * p_manager)
{
@@ -2095,7 +2095,7 @@ opj_bool opj_jp2_read_tile_header ( opj_jp2_v2_t * p_jp2,
p_manager);
}
-opj_bool opj_jp2_write_tile ( opj_jp2_v2_t *p_jp2,
+opj_bool OPJ_CALLCONV opj_jp2_write_tile ( opj_jp2_v2_t *p_jp2,
OPJ_UINT32 p_tile_index,
OPJ_BYTE * p_data,
OPJ_UINT32 p_data_size,
@@ -2118,7 +2118,7 @@ opj_bool opj_jp2_decode_tile ( opj_jp2_v2_t * p_jp2,
return opj_j2k_decode_tile (p_jp2->j2k,p_tile_index,p_data,p_data_size,p_stream,p_manager);
}
-void opj_jp2_destroy(opj_jp2_v2_t *jp2)
+void OPJ_CALLCONV opj_jp2_destroy(opj_jp2_v2_t *jp2)
{
if (jp2) {
/* destroy the J2K codec */
@@ -2249,7 +2249,7 @@ opj_bool opj_jp2_get_tile( opj_jp2_v2_t *p_jp2,
/* JP2 encoder interface */
/* ----------------------------------------------------------------------- */
-opj_jp2_v2_t* opj_jp2_create(opj_bool p_is_decoder)
+opj_jp2_v2_t* OPJ_CALLCONV opj_jp2_create(opj_bool p_is_decoder)
{
opj_jp2_v2_t *jp2 = (opj_jp2_v2_t*)opj_malloc(sizeof(opj_jp2_v2_t));
if (jp2) {
@@ -2308,7 +2308,7 @@ opj_codestream_index_t* jp2_get_cstr_index(opj_jp2_v2_t* p_jp2)
return j2k_get_cstr_index(p_jp2->j2k);
}
-opj_codestream_info_v2_t* jp2_get_cstr_info(opj_jp2_v2_t* p_jp2)
+opj_codestream_info_v2_t* OPJ_CALLCONV jp2_get_cstr_info(opj_jp2_v2_t* p_jp2)
{
return j2k_get_cstr_info(p_jp2->j2k);
}
diff --git a/src/lib/openjp2/jp2.h b/src/lib/openjp2/jp2.h
index 7dc7c1b5..66c665aa 100644
--- a/src/lib/openjp2/jp2.h
+++ b/src/lib/openjp2/jp2.h
@@ -265,7 +265,7 @@ opj_jp2_img_header_writer_handler_t;
*
* @return true if writing was successful.
*/
-opj_bool opj_jp2_write_jp2h(opj_jp2_v2_t *jp2,
+OPJ_API opj_bool OPJ_CALLCONV opj_jp2_write_jp2h(opj_jp2_v2_t *jp2,
opj_stream_private_t *stream,
opj_event_mgr_t * p_manager );
@@ -300,7 +300,7 @@ opj_bool opj_jp2_decode(opj_jp2_v2_t *jp2,
* @param image input filled image
* @param p_manager FIXME DOC
*/
-void opj_jp2_setup_encoder( opj_jp2_v2_t *jp2,
+OPJ_API void OPJ_CALLCONV opj_jp2_setup_encoder( opj_jp2_v2_t *jp2,
opj_cparameters_t *parameters,
opj_image_t *image,
opj_event_mgr_t * p_manager);
@@ -312,7 +312,7 @@ Encode an image into a JPEG-2000 file stream
@param p_manager event manager
@return Returns true if successful, returns false otherwise
*/
-opj_bool opj_jp2_encode( opj_jp2_v2_t *jp2,
+OPJ_API opj_bool OPJ_CALLCONV opj_jp2_encode( opj_jp2_v2_t *jp2,
opj_stream_private_t *stream,
opj_event_mgr_t * p_manager);
@@ -402,7 +402,7 @@ opj_bool opj_jp2_read_tile_header ( opj_jp2_v2_t * p_jp2,
* @param p_stream the stream to write data to.
* @param p_manager the user event manager.
*/
-opj_bool opj_jp2_write_tile ( opj_jp2_v2_t *p_jp2,
+OPJ_API opj_bool OPJ_CALLCONV opj_jp2_write_tile ( opj_jp2_v2_t *p_jp2,
OPJ_UINT32 p_tile_index,
OPJ_BYTE * p_data,
OPJ_UINT32 p_data_size,
@@ -432,13 +432,13 @@ opj_bool opj_jp2_decode_tile ( opj_jp2_v2_t * p_jp2,
*
* @return an empty jpeg2000 file codec.
*/
-opj_jp2_v2_t* opj_jp2_create (opj_bool p_is_decoder);
+OPJ_API opj_jp2_v2_t* OPJ_CALLCONV opj_jp2_create (opj_bool p_is_decoder);
/**
Destroy a JP2 decompressor handle
@param jp2 JP2 decompressor handle to destroy
*/
-void opj_jp2_destroy(opj_jp2_v2_t *jp2);
+OPJ_API void OPJ_CALLCONV opj_jp2_destroy(opj_jp2_v2_t *jp2);
/**
@@ -496,7 +496,7 @@ void jp2_dump (opj_jp2_v2_t* p_jp2, OPJ_INT32 flag, FILE* out_stream);
*
*@return the codestream information extract from the jpg2000 codec
*/
-opj_codestream_info_v2_t* jp2_get_cstr_info(opj_jp2_v2_t* p_jp2);
+OPJ_API opj_codestream_info_v2_t* OPJ_CALLCONV jp2_get_cstr_info(opj_jp2_v2_t* p_jp2);
/**
* Get the codestream index from a JPEG2000 codec.