mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-29 11:41:22 +03:00
Added a per-document compression interface, Daniel.
This commit is contained in:
@ -1,3 +1,7 @@
|
|||||||
|
Thu Sep 24 15:13:29 EDT 1998 Daniel Veillard <Daniel.Veillard@w3.org>
|
||||||
|
|
||||||
|
* tree.c, tree.h: added a per-document compression interface.
|
||||||
|
|
||||||
Tue Sep 22 20:47:38 EDT 1998
|
Tue Sep 22 20:47:38 EDT 1998
|
||||||
|
|
||||||
* tree.c, tree.h: added saving with compression and added interfaces
|
* tree.c, tree.h: added saving with compression and added interfaces
|
||||||
|
@ -112,6 +112,7 @@ typedef struct xmlDoc {
|
|||||||
char *name; /* name/filename/URI of the document */
|
char *name; /* name/filename/URI of the document */
|
||||||
const CHAR *version; /* the XML version string */
|
const CHAR *version; /* the XML version string */
|
||||||
const CHAR *encoding; /* encoding, if any */
|
const CHAR *encoding; /* encoding, if any */
|
||||||
|
int compression;/* level of zlib compression */
|
||||||
int standalone; /* standalone document (no external refs) */
|
int standalone; /* standalone document (no external refs) */
|
||||||
struct xmlDtd *dtd; /* the document DTD if available */
|
struct xmlDtd *dtd; /* the document DTD if available */
|
||||||
struct xmlNs *oldNs; /* Global namespace, the old way */
|
struct xmlNs *oldNs; /* Global namespace, the old way */
|
||||||
@ -173,6 +174,8 @@ extern void xmlDocDumpMemory(xmlDocPtr cur, CHAR**mem, int *size);
|
|||||||
extern void xmlDocDump(FILE *f, xmlDocPtr doc);
|
extern void xmlDocDump(FILE *f, xmlDocPtr doc);
|
||||||
int xmlSaveFile(const char *filename, xmlDocPtr cur);
|
int xmlSaveFile(const char *filename, xmlDocPtr cur);
|
||||||
|
|
||||||
|
extern int xmlGetDocCompressMode (xmlDocPtr doc);
|
||||||
|
extern void xmlSetDocCompressMode (xmlDocPtr doc, int mode);
|
||||||
extern int xmlGetCompressMode(void);
|
extern int xmlGetCompressMode(void);
|
||||||
extern void xmlSetCompressMode(int mode);
|
extern void xmlSetCompressMode(int mode);
|
||||||
|
|
||||||
|
23
tree.c
23
tree.c
@ -25,6 +25,8 @@ static CHAR xmlStringText[] = { 't', 'e', 'x', 't', 0 };
|
|||||||
int oldXMLWDcompatibility = 0;
|
int oldXMLWDcompatibility = 0;
|
||||||
int xmlIndentTreeOutput = 1;
|
int xmlIndentTreeOutput = 1;
|
||||||
|
|
||||||
|
static int xmlCompressMode = 0;
|
||||||
|
|
||||||
/************************************************************************
|
/************************************************************************
|
||||||
* *
|
* *
|
||||||
* Allocation and deallocation of basic structures *
|
* Allocation and deallocation of basic structures *
|
||||||
@ -274,6 +276,7 @@ xmlDocPtr xmlNewDoc(const CHAR *version) {
|
|||||||
cur->encoding = NULL;
|
cur->encoding = NULL;
|
||||||
cur->entities = NULL;
|
cur->entities = NULL;
|
||||||
cur->standalone = -1;
|
cur->standalone = -1;
|
||||||
|
cur->compression = xmlCompressMode;
|
||||||
return(cur);
|
return(cur);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1155,17 +1158,31 @@ void xmlDocDumpMemory(xmlDocPtr cur, CHAR**mem, int *size) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Get the compression mode
|
* Get/Set a document compression mode.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static int xmlCompressMode = 0;
|
int xmlGetDocCompressMode (xmlDocPtr doc) {
|
||||||
|
if (doc == NULL) return(-1);
|
||||||
|
return(doc->compression);
|
||||||
|
}
|
||||||
|
|
||||||
|
void xmlSetDocCompressMode (xmlDocPtr doc, int mode) {
|
||||||
|
if (doc == NULL) return;
|
||||||
|
if (mode < 0) doc->compression = 0;
|
||||||
|
else if (mode > 9) doc->compression = 9;
|
||||||
|
else doc->compression = mode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Get/Set the global compression mode
|
||||||
|
*/
|
||||||
|
|
||||||
int xmlGetCompressMode(void) {
|
int xmlGetCompressMode(void) {
|
||||||
return(xmlCompressMode);
|
return(xmlCompressMode);
|
||||||
}
|
}
|
||||||
void xmlSetCompressMode(int mode) {
|
void xmlSetCompressMode(int mode) {
|
||||||
if (mode < 0) xmlCompressMode = 0;
|
if (mode < 0) xmlCompressMode = 0;
|
||||||
if (mode > 9) xmlCompressMode = 9;
|
else if (mode > 9) xmlCompressMode = 9;
|
||||||
else xmlCompressMode = mode;
|
else xmlCompressMode = mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
3
tree.h
3
tree.h
@ -112,6 +112,7 @@ typedef struct xmlDoc {
|
|||||||
char *name; /* name/filename/URI of the document */
|
char *name; /* name/filename/URI of the document */
|
||||||
const CHAR *version; /* the XML version string */
|
const CHAR *version; /* the XML version string */
|
||||||
const CHAR *encoding; /* encoding, if any */
|
const CHAR *encoding; /* encoding, if any */
|
||||||
|
int compression;/* level of zlib compression */
|
||||||
int standalone; /* standalone document (no external refs) */
|
int standalone; /* standalone document (no external refs) */
|
||||||
struct xmlDtd *dtd; /* the document DTD if available */
|
struct xmlDtd *dtd; /* the document DTD if available */
|
||||||
struct xmlNs *oldNs; /* Global namespace, the old way */
|
struct xmlNs *oldNs; /* Global namespace, the old way */
|
||||||
@ -173,6 +174,8 @@ extern void xmlDocDumpMemory(xmlDocPtr cur, CHAR**mem, int *size);
|
|||||||
extern void xmlDocDump(FILE *f, xmlDocPtr doc);
|
extern void xmlDocDump(FILE *f, xmlDocPtr doc);
|
||||||
int xmlSaveFile(const char *filename, xmlDocPtr cur);
|
int xmlSaveFile(const char *filename, xmlDocPtr cur);
|
||||||
|
|
||||||
|
extern int xmlGetDocCompressMode (xmlDocPtr doc);
|
||||||
|
extern void xmlSetDocCompressMode (xmlDocPtr doc, int mode);
|
||||||
extern int xmlGetCompressMode(void);
|
extern int xmlGetCompressMode(void);
|
||||||
extern void xmlSetCompressMode(int mode);
|
extern void xmlSetCompressMode(int mode);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user