00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef BIXSLT_H_
00029 #define BIXSLT_H_
00030
00031 #include "BIXML.h"
00032
00033 #include "BTXSLT.h"
00034
00035 namespace BAL {
00036
00037
00044 class BIXSLT {
00045 public:
00046
00047 virtual ~BIXSLT(){}
00048
00054 virtual int isBlank( unsigned char *) = 0;
00055
00061 virtual int isXsltElem( BTXMLNode *) = 0;
00062
00068 virtual int isXlstName( BTXMLNode *, char * ) = 0;
00069
00073 virtual unsigned char *xsltGetNsProp( BTXMLNode *node, const unsigned char *name, const unsigned char *nameSpace) = 0;
00074
00078 virtual BTXSLTStyleSheet* xsltLoadStylesheetPI( BTXMLDoc *doc ) = 0;
00079
00083 virtual BTXSLTStyleSheet* xsltParseStylesheetDoc( BTXMLDoc *doc ) = 0;
00084
00103 virtual void setLoaderFunc( BIXSLTDocLoaderFunc f ) = 0;
00104
00105
00109 virtual int xsltSaveResultTo( BTXMLOutputBuffer *buf, BTXMLDoc *result, BTXSLTStyleSheet *style) = 0;
00110
00114 virtual void getImportPtr( const unsigned char *res, BTXSLTStyleSheet *style ) = 0;
00115
00119 virtual BTXSLTTransformContext *xsltNewTransformContext( BTXSLTStyleSheet *style, BTXMLDoc *doc ) = 0;
00120
00124 virtual BTXMLDoc *xsltApplyStylesheetUser( BTXSLTStyleSheet *style,
00125 BTXMLDoc *doc,
00126 const char **params,
00127 const char *output,
00128 FILE * profile,
00129 BTXSLTTransformContext *userCtxt) = 0;
00130
00134 virtual int xsltQuoteUserParams( BTXSLTTransformContext *ctxt, const char **params) = 0;
00135
00136
00140 virtual void xsltFreeTransformContext( BTXSLTTransformContext *ctxt ) = 0;
00141
00145 virtual void xsltFreeStylesheet( BTXSLTStyleSheet *sheet ) = 0;
00146 };
00147
00148
00149 }
00150
00151 #endif // BIXLST_H_
00152