SaxonC 12.7.0
Saxon Processor library for C/C++, PHP and Python
Loading...
Searching...
No Matches
SaxonCProcessor.h
Go to the documentation of this file.
1#ifndef SAXONCPROC_H
2#define SAXONCPROC_H
3
5// Copyright (c) 2022 - 2023 Saxonica Limited.
6// This Source Code Form is subject to the terms of the Mozilla Public License,
7// v. 2.0. If a copy of the MPL was not distributed with this file, You can
8// obtain one at http://mozilla.org/MPL/2.0/. This Source Code Form is
9// "Incompatible With Secondary Licenses", as defined by the Mozilla Public
10// License, v. 2.0.
12
13#include "saxonc_export.h"
14#include "saxonc/SaxonCGlue.h"
15
26typedef struct {
27 int64_t xqueryProc;
29
33typedef struct {
34 int64_t xsltProc;
35} sxnc_xslt;
36
40typedef struct {
41 int64_t xpathProc;
43
44EXTERN_SAXONC
45
49SAXONC_EXPORT const char *version(sxnc_environment *environi, sxnc_processor *proc);
50
54SAXONC_EXPORT const char *getProductVariantAndVersion(sxnc_environment *environi,
55 sxnc_processor *proc);
56
75SAXONC_EXPORT void initSaxonc(sxnc_environment **environi, sxnc_processor **proc,
76 sxnc_parameter **param, sxnc_property **prop, int cap,
77 int propCap);
78
89SAXONC_EXPORT void freeSaxonc(sxnc_environment **environi, sxnc_processor **proc,
90 sxnc_parameter **param, sxnc_property **prop);
91
102SAXONC_EXPORT void setConfigurationProperty(sxnc_environment *environi, sxnc_processor *proc,
103 char *name, char *value);
104
116SAXONC_EXPORT void setCatalog(sxnc_environment *environi, sxnc_processor *proc,
117 char *cwd, char *catalogFileName);
118
119
131SAXONC_EXPORT void setCatalogFiles(sxnc_environment *environi, sxnc_processor *proc,
132 char *cwd, char **catalogFileName, int length);
133
157SAXONC_EXPORT void xsltSaveResultToFile(sxnc_environment *environi, sxnc_processor *proc,
158 char *cwd, char *source, char *stylesheet,
159 char *outputfile, sxnc_parameter *parameters,
160 sxnc_property *properties, int parLen, int propLen);
161
186SAXONC_EXPORT const char *xsltApplyStylesheet(sxnc_environment *environi,
187 sxnc_processor *proc, char *cwd, char *source,
188 char *stylesheet, sxnc_parameter *parameters,
189 sxnc_property *properties, int parLen,
190 int propLen);
211SAXONC_EXPORT void executeQueryToFile(sxnc_environment *environi, sxnc_processor *proc,
212 char *cwd, char *outputfile, sxnc_parameter *parameters,
213 sxnc_property *properties, int parLen, int propLen);
214
235SAXONC_EXPORT const char *executeQueryToString(sxnc_environment *environi,
236 sxnc_processor *proc, char *cwd,
237 sxnc_parameter *parameters,
238 sxnc_property *properties, int parLen,
239 int propLen);
240
246SAXONC_EXPORT const char *c_getErrorMessage(sxnc_environment *environi);
247
248EXTERN_SAXONC_END
249
250#endif
This C header file contains a number of factory functions for running SaxonC C/C++ APIs,...
EXTERN_SAXONC SAXONC_EXPORT const char * version(sxnc_environment *environi, sxnc_processor *proc)
Get the Saxon version.
Definition SaxonCProcessor.c:6
SAXONC_EXPORT void setCatalog(sxnc_environment *environi, sxnc_processor *proc, char *cwd, char *catalogFileName)
Set a catalog file to be used in Saxon.
Definition SaxonCProcessor.c:49
SAXONC_EXPORT const char * executeQueryToString(sxnc_environment *environi, sxnc_processor *proc, char *cwd, sxnc_parameter *parameters, sxnc_property *properties, int parLen, int propLen)
Execute a query with the result returned as a string value (char pointer array).
Definition SaxonCProcessor.c:186
SAXONC_EXPORT void xsltSaveResultToFile(sxnc_environment *environi, sxnc_processor *proc, char *cwd, char *source, char *stylesheet, char *outputfile, sxnc_parameter *parameters, sxnc_property *properties, int parLen, int propLen)
Transform an XSLT stylesheet with the result saved to file.
Definition SaxonCProcessor.c:89
SAXONC_EXPORT void freeSaxonc(sxnc_environment **environi, sxnc_processor **proc, sxnc_parameter **param, sxnc_property **prop)
Free associated memory on the heap created by the SaxonC Processors, properties and parameters.
Definition SaxonCProcessor.c:30
SAXONC_EXPORT void initSaxonc(sxnc_environment **environi, sxnc_processor **proc, sxnc_parameter **param, sxnc_property **prop, int cap, int propCap)
Initialise the SaxonC Processor, along with the parameters and the properties pointers.
Definition SaxonCProcessor.c:20
SAXONC_EXPORT const char * c_getErrorMessage(sxnc_environment *environi)
Get a pointer to the current error message as a string.
Definition SaxonCProcessor.c:217
SAXONC_EXPORT void executeQueryToFile(sxnc_environment *environi, sxnc_processor *proc, char *cwd, char *outputfile, sxnc_parameter *parameters, sxnc_property *properties, int parLen, int propLen)
Execute a query with the result saved to file.
Definition SaxonCProcessor.c:157
SAXONC_EXPORT void setCatalogFiles(sxnc_environment *environi, sxnc_processor *proc, char *cwd, char **catalogFileName, int length)
Set multiple catalog files to be used in Saxon.
Definition SaxonCProcessor.c:67
SAXONC_EXPORT const char * getProductVariantAndVersion(sxnc_environment *environi, sxnc_processor *proc)
Get the Saxon version and edition.
Definition SaxonCProcessor.c:14
SAXONC_EXPORT void setConfigurationProperty(sxnc_environment *environi, sxnc_processor *proc, char *name, char *value)
Set a configuration property specific to the processor in use.
Definition SaxonCProcessor.c:38
SAXONC_EXPORT const char * xsltApplyStylesheet(sxnc_environment *environi, sxnc_processor *proc, char *cwd, char *source, char *stylesheet, sxnc_parameter *parameters, sxnc_property *properties, int parLen, int propLen)
Transform an XSLT stylesheet with the result returned as a string value (char pointer array).
Definition SaxonCProcessor.c:125
sxnc_environment.
Definition SaxonCGlue.h:80
sxnc_parameter.
Definition SaxonCGlue.h:92
! sxnc_processor.
Definition SaxonCGlue.h:121
sxnc_property.
Definition SaxonCGlue.h:105
sxnc_xpath.
Definition SaxonCProcessor.h:40
int64_t xpathProc
ObjectHandle reference to the underlying XPathProcessor.
Definition SaxonCProcessor.h:41
sxnc_xquery.
Definition SaxonCProcessor.h:26
int64_t xqueryProc
ObjectHandle reference to the underlying XQueryProcessor.
Definition SaxonCProcessor.h:27
sxnc_xslt.
Definition SaxonCProcessor.h:33
int64_t xsltProc
ObjectHandle reference to the underlying XSLTProcessor.
Definition SaxonCProcessor.h:34