campo-sirio/pdf/pdflib/pdflibdl.h
alex c434cad322 Patch level : 4.0 451
Files correlati     :
Ricompilazione Demo : [ ]
Commento            :

Riportata la versione 3.1 patch 650


git-svn-id: svn://10.65.10.50/trunk@14148 c028cbd2-c16b-5b4b-a496-9718f37d4682
2006-07-11 13:10:51 +00:00

61 lines
2.2 KiB
C
Executable File

/*---------------------------------------------------------------------------*
| PDFlib - A library for generating PDF on the fly |
+---------------------------------------------------------------------------+
| Copyright (c) 1997-2005 Thomas Merz and PDFlib GmbH. All rights reserved. |
+---------------------------------------------------------------------------+
| |
| This software is subject to the PDFlib license. It is NOT in the |
| public domain. Extended versions and commercial licenses are |
| available, please check http://www.pdflib.com. |
| |
*---------------------------------------------------------------------------*/
/* $Id: pdflibdl.h,v 1.3 2006-07-11 13:10:33 alex Exp $
*
* Function prototypes for dynamically loading the PDFlib DLL at runtime
*
*/
#include "pdflib.h"
#ifdef __cplusplus
extern "C" {
#endif
/*
* Notes for using the PDFlib DLL loading mechanism:
*
* - PDF_TRY_DL()/PDF_CATCH_DL() must be used instead of the standard
* exception handling macros.
* - PDF_new_dl() must be used instead of PDF_boot() and PDF_new()/PDF_new2().
* - PDF_delete_dl() must be used instead of PDF_delete() and PDF_shutdown().
* - PDF_get_opaque() must not be used.
*/
/* Load the PDFlib DLL, and fetch pointers to all exported functions. */
PDFLIB_API PDFlib_api * PDFLIB_CALL
PDF_new_dl(PDF **pp);
/* Unload the previously loaded PDFlib DLL (also calls PDF_shutdown()) */
PDFLIB_API void PDFLIB_CALL
PDF_delete_dl(PDFlib_api *PDFlib, PDF *p);
#define PDF_TRY_DL(PDFlib, p) \
if (p) { if (setjmp(PDFlib->pdf_jbuf(p)->jbuf) == 0)
/* Inform the exception machinery that a PDF_TRY() will be left without
entering the corresponding PDF_CATCH( ) clause. */
#define PDF_EXIT_TRY_DL(PDFlib, p) PDFlib->pdf_exit_try(p)
/* Catch an exception; must always be paired with PDF_TRY(). */
#define PDF_CATCH_DL(PDFlib, p) } if (PDFlib->pdf_catch(p))
/* Re-throw an exception to another handler. */
#define PDF_RETHROW_DL(PDFlib, p) PDFlib->pdf_rethrow(p)
#ifdef __cplusplus
} /* extern "C" */
#endif