As explained in the eXtremeDB Windows Libraries page, the
\target\bin
directory under your eXtremeDB installation root directory contains, in addition to the basic libraries, additional contents that depend on the specific eXtremeDB Extension Modules purchased. For C and C++ applications using these additional features, one or more of these additional libraries will be required. And for any of these additional features the appropriate System Access Layer (SAL) libraries are required.As mentioned in the basic libraries page, the native C libraries are provided in two forms: debug and release mode. In the sections below only release mode filenames are shown.
SQL Support
eXtremeSQL provides libraries for embedded "local" and "remote" SQL database support. All applications using the embedded SQL API require the following libraries:
mcosql.lib The eXtremeSQL core internals In addition, the following library is provided for xSQL in order to process schema definitions:
mcocomp.lib
Support for importing schema files in xSQL
HTTP Viewer with SQL Capability
The HTTP Viewer in eXtremeSQL packages provides the following library which can be used to provide SQL capability in the HTTP Viewer. It replaces library
mcohv.lib
and must be used in conjunction with the librarymcocgi.lib
ormcoews_cgi_cud.lib
:
mcohv_sql.lib HTTP Viewer with SQL Interface (required for the SQL variant of HTTP Viewer. Note that if this library is used, the other SQL support libraries must also be linked ) Remote SQL
Remote SQL applications require the following additional library:
mcorsql.lib Remote SQL implementation Remote SQL Client Only
It is possible to obtain a specially built eXtremeSQL package that includes only client source files for RSQL client applications. If this is your package then additional contents in the following directories are added to the standard object-code distribution:
target/mcosql target/mcorsql target/sal includeIt is important to note that this package does not support the
sequence
data type. It is impossible to deliver sequences support without making fundamental changes, so this package simply has a placeholder librarymcorsqlstub.lib
(containing empty shells for all sequence functions) that must be linked with the runtime. With this package, RSQL client applications can be built without adding dependencies to the core runtime or any other eXtremeDB runtime components (except those listed above). Only the following runtime libraries must be linked with the application:
mcosql.lib The eXtremeSQL SQL core internals mcorsql.lib Remote SQL implementation mcorsqlstdln.lib Standard input stream overlay implementation for Remote SQL mconet.lib System Abstraction Layer (SAL) Network Layer mcosmp.lib System Abstraction Layer (SAL) Threading and Synchronization libmcomem.lib System Abstraction Layer (SAL) memory management High Availability Support
eXtremeDB High Availability packages provide the following libraries. All applications that use the High Availability API must link with:
mcoha.lib High Availability API and, in addition, one of the following transport layer libraries (or else implement its own custom transport layer):
mconwpip.lib PIPE Transport Layer mconwtcp.lib TCP/IP Transport Layer mconwudp.lib UDP Transport Layer mcoiter.lib Implements iterators and streams for publishing detailed information about all database changes made by transactions; used in HA to publish operations on the replica side (see page High Availability Dynamic Schema Modification for further details) Cluster Support
eXtremeDB High Availability packages also include the following Cluster libraries. All applications that use the Cluster API must link with:
mcocluster.lib Cluster core implementation and, in addition, either the following transport layer library (or else implement its own custom transport layer):
mcocltcp.lib TCP/IP Transport Layer Performance Monitor
The Performance Monitory API can be implemented in a custom application and in this case include just the
mcoperf
library. Or it can be used with the provided HTTP implementation inmcohvperf
in which case both libraries are required:
mcoperf.lib Performance Monitor implementation mcohvperf.lib HTTP interface to the Performance Monitor Web Services
C and C++ applications that wish to use the web services must link with the following libraries:
mcorest.lib The embedded Web Services REST API mcoews.lib HTTP server implementation mcosaltimer.lib Low-resolution and high-resolution timer implementations mcosalsmp.lib Required for multithreading support Applications that wish to expose an existing web service will link with its library, as well as its dependencies: