added "OPJ_EXPORT" in openjpeg.h to generate shared lib with win32

This commit is contained in:
Antonin Descampe 2006-01-25 08:50:18 +00:00
parent d02b01dc85
commit 5432a70c79
2 changed files with 31 additions and 16 deletions

View File

@ -6,6 +6,7 @@ What's New for OpenJPEG
+ : added + : added
January 25, 2006 January 25, 2006
+ added "OPJ_EXPORT" in openjpeg.h to generate shared lib with win32
! removed all CtrlM from files (openjpeg.h,t2.c,j2k_to_image.c) ! removed all CtrlM from files (openjpeg.h,t2.c,j2k_to_image.c)
January 24, 2006 January 24, 2006

View File

@ -32,6 +32,20 @@
#define OPENJPEG_VERSION "1.0.0" #define OPENJPEG_VERSION "1.0.0"
#if defined(_WIN32) && !defined (OPJ_STATIC)
#ifdef OPJ_SHARED
#define OPJ_EXPORT __declspec(dllexport)
#else
#define OPJ_EXPORT __declspec(dllimport)
#endif
#else
#ifdef OPJ_STATIC
#define OPJ_EXPORT extern
#else
#define OPJ_EXPORT
#endif
#endif
/* /*
========================================================== ==========================================================
Compiler directives Compiler directives
@ -461,13 +475,13 @@ Create an image
@param clrspc image color space @param clrspc image color space
@return returns a new image structure if successful, returns NULL otherwise @return returns a new image structure if successful, returns NULL otherwise
*/ */
opj_image_t *opj_image_create(int numcmpts, opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc); OPJ_EXPORT opj_image_t *opj_image_create(int numcmpts, opj_image_cmptparm_t *cmptparms, OPJ_COLOR_SPACE clrspc);
/** /**
Deallocate any resources associated with an image Deallocate any resources associated with an image
@param image image to be destroyed @param image image to be destroyed
*/ */
void opj_image_destroy(opj_image_t *image); OPJ_EXPORT void opj_image_destroy(opj_image_t *image);
/* /*
========================================================== ==========================================================
@ -486,20 +500,20 @@ to contain encoded data.
@param length Reading: buffer length. Writing: 0 @param length Reading: buffer length. Writing: 0
@return Returns a CIO handle if successful, returns NULL otherwise @return Returns a CIO handle if successful, returns NULL otherwise
*/ */
opj_cio_t* opj_cio_open(opj_common_ptr cinfo, unsigned char *buffer, int length); OPJ_EXPORT opj_cio_t* opj_cio_open(opj_common_ptr cinfo, unsigned char *buffer, int length);
/** /**
Close and free a CIO handle Close and free a CIO handle
@param cio CIO handle to free @param cio CIO handle to free
*/ */
void opj_cio_close(opj_cio_t *cio); OPJ_EXPORT void opj_cio_close(opj_cio_t *cio);
/** /**
Get position in byte stream Get position in byte stream
@param cio CIO handle @param cio CIO handle
@return Returns the position in bytes @return Returns the position in bytes
*/ */
int cio_tell(opj_cio_t *cio); OPJ_EXPORT int cio_tell(opj_cio_t *cio);
/** /**
Set position in byte stream Set position in byte stream
@param cio CIO handle @param cio CIO handle
@ -513,7 +527,7 @@ void cio_seek(opj_cio_t *cio, int pos);
========================================================== ==========================================================
*/ */
opj_event_mgr_t* opj_set_event_mgr(opj_common_ptr cinfo, opj_event_mgr_t *event_mgr, void *context); OPJ_EXPORT opj_event_mgr_t* opj_set_event_mgr(opj_common_ptr cinfo, opj_event_mgr_t *event_mgr, void *context);
/* /*
========================================================== ==========================================================
@ -525,42 +539,42 @@ Creates a J2K/JPT/JP2 decompression structure
@param format Decoder to select @param format Decoder to select
@return Returns a handle to a decompressor if successful, returns NULL otherwise @return Returns a handle to a decompressor if successful, returns NULL otherwise
*/ */
opj_dinfo_t* opj_create_decompress(OPJ_CODEC_FORMAT format); OPJ_EXPORT opj_dinfo_t* opj_create_decompress(OPJ_CODEC_FORMAT format);
/** /**
Destroy a decompressor handle Destroy a decompressor handle
@param dinfo decompressor handle to destroy @param dinfo decompressor handle to destroy
*/ */
void opj_destroy_decompress(opj_dinfo_t *dinfo); OPJ_EXPORT void opj_destroy_decompress(opj_dinfo_t *dinfo);
/** /**
Set decoding parameters to default values Set decoding parameters to default values
@param parameters Decompression parameters @param parameters Decompression parameters
*/ */
void opj_set_default_decoder_parameters(opj_dparameters_t *parameters); OPJ_EXPORT void opj_set_default_decoder_parameters(opj_dparameters_t *parameters);
/** /**
Setup the decoder decoding parameters using user parameters. Setup the decoder decoding parameters using user parameters.
Decoding parameters are returned in j2k->cp. Decoding parameters are returned in j2k->cp.
@param dinfo decompressor handle @param dinfo decompressor handle
@param parameters decompression parameters @param parameters decompression parameters
*/ */
void opj_setup_decoder(opj_dinfo_t *dinfo, opj_dparameters_t *parameters); OPJ_EXPORT void opj_setup_decoder(opj_dinfo_t *dinfo, opj_dparameters_t *parameters);
/** /**
Decode an image from a JPEG-2000 codestream Decode an image from a JPEG-2000 codestream
@param dinfo decompressor handle @param dinfo decompressor handle
@param cio Input buffer stream @param cio Input buffer stream
@return Returns a decoded image if successful, returns NULL otherwise @return Returns a decoded image if successful, returns NULL otherwise
*/ */
opj_image_t* opj_decode(opj_dinfo_t *dinfo, opj_cio_t *cio); OPJ_EXPORT opj_image_t* opj_decode(opj_dinfo_t *dinfo, opj_cio_t *cio);
/** /**
Creates a J2K/JP2 compression structure Creates a J2K/JP2 compression structure
@param format Coder to select @param format Coder to select
@return Returns a handle to a compressor if successful, returns NULL otherwise @return Returns a handle to a compressor if successful, returns NULL otherwise
*/ */
opj_cinfo_t* opj_create_compress(OPJ_CODEC_FORMAT format); OPJ_EXPORT opj_cinfo_t* opj_create_compress(OPJ_CODEC_FORMAT format);
/** /**
Destroy a compressor handle Destroy a compressor handle
@param cinfo compressor handle to destroy @param cinfo compressor handle to destroy
*/ */
void opj_destroy_compress(opj_cinfo_t *cinfo); OPJ_EXPORT void opj_destroy_compress(opj_cinfo_t *cinfo);
/** /**
Set encoding parameters to default values, that means : Set encoding parameters to default values, that means :
<ul> <ul>
@ -582,14 +596,14 @@ Set encoding parameters to default values, that means :
</ul> </ul>
@param parameters Compression parameters @param parameters Compression parameters
*/ */
void opj_set_default_encoder_parameters(opj_cparameters_t *parameters); OPJ_EXPORT void opj_set_default_encoder_parameters(opj_cparameters_t *parameters);
/** /**
Setup the encoder parameters using the current image and using user parameters. Setup the encoder parameters using the current image and using user parameters.
@param cinfo compressor handle @param cinfo compressor handle
@param parameters compression parameters @param parameters compression parameters
@param image input filled image @param image input filled image
*/ */
void opj_setup_encoder(opj_cinfo_t *cinfo, opj_cparameters_t *parameters, opj_image_t *image); OPJ_EXPORT void opj_setup_encoder(opj_cinfo_t *cinfo, opj_cparameters_t *parameters, opj_image_t *image);
/** /**
Encode an image into a JPEG-2000 codestream Encode an image into a JPEG-2000 codestream
@param cinfo compressor handle @param cinfo compressor handle
@ -598,7 +612,7 @@ Encode an image into a JPEG-2000 codestream
@param index Name of the index file if required, NULL otherwise @param index Name of the index file if required, NULL otherwise
@return Returns true if successful, returns false otherwise @return Returns true if successful, returns false otherwise
*/ */
bool opj_encode(opj_cinfo_t *cinfo, opj_cio_t *cio, opj_image_t *image, char *index); OPJ_EXPORT bool opj_encode(opj_cinfo_t *cinfo, opj_cio_t *cio, opj_image_t *image, char *index);
#ifdef __cplusplus #ifdef __cplusplus
} }