summaryrefslogtreecommitdiff
path: root/xps/ghostxps.h
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2017-01-26 18:09:06 +0000
committerRobin Watts <Robin.Watts@artifex.com>2017-01-26 18:40:10 +0000
commit0734126eafa7c9212341886626d15d90ccce400f (patch)
treeb330240e77998acb1a3a19db15fb6068706dde2f /xps/ghostxps.h
parent68af8c3b1584d0b001c7bd96456caf7547a0229e (diff)
downloadghostpdl-0734126eafa7c9212341886626d15d90ccce400f.tar.gz
Add XPS_INDIRECTED_FILE_ACCESS define
If defined, then the xps interpreter looks to use user supplied xps_{fopen,ftell,fseek,getc,fread,fclose} functions rather than gp_fopen,ftell,fseek,getc,fread,fclose.
Diffstat (limited to 'xps/ghostxps.h')
-rw-r--r--xps/ghostxps.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/xps/ghostxps.h b/xps/ghostxps.h
index 6f0158197..df6304326 100644
--- a/xps/ghostxps.h
+++ b/xps/ghostxps.h
@@ -440,3 +440,19 @@ unsigned int
xps_crc32(unsigned int crc, unsigned char *buf, int len);
int xps_high_level_pattern(xps_context_t *ctx);
+
+#ifdef XPS_INDIRECTED_FILE_ACCESS
+FILE *xps_fopen(const char *filename, const char *access);
+long xps_ftell(FILE *file);
+int xps_fseek(FILE *file, long offset, int whence);
+int xps_getc(FILE *file);
+size_t xps_fread(void *ptr, size_t size, size_t n, FILE *file);
+int xps_fclose(FILE *file);
+#else
+#define xps_fopen gp_fopen
+#define xps_ftell ftell
+#define xps_fseek fseek
+#define xps_getc getc
+#define xps_fread fread
+#define xps_fclose fclose
+#endif