summaryrefslogtreecommitdiffstats
path: root/src/engine.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/engine.h')
-rw-r--r--src/engine.h28
1 files changed, 26 insertions, 2 deletions
diff --git a/src/engine.h b/src/engine.h
index c0cb57d..0d16d9f 100644
--- a/src/engine.h
+++ b/src/engine.h
@@ -1,6 +1,25 @@
#ifndef _RCC_ENGINE_H
#define _RCC_ENGINE_H
+#include "../config.h"
+
+#ifdef HAVE_RCD
+# define RCC_RCD_SUPPORT
+# undef RCC_RCD_DYNAMIC
+#elif HAVE_DLOPEN
+# define RCC_RCD_SUPPORT
+# define RCC_RCD_DYNAMIC
+#else
+# undef RCC_RCD_SUPPORT
+# undef RCC_RCD_DYNAMIC
+#endif
+
+#define RCC_RCD_LIB "librcd.so.0"
+
+#ifdef RCC_RCD_DYNAMIC
+# define RCC_RCD_SUPPORT
+#endif
+
struct rcc_engine_context_t {
rcc_context ctx;
rcc_language *language;
@@ -12,9 +31,14 @@ struct rcc_engine_context_t {
};
typedef struct rcc_engine_context_t rcc_engine_context_s;
-int rccEngineInit(rcc_engine_context engine_ctx, rcc_context ctx);
-void rccEngineFree(rcc_engine_context engine_ctx);
+int rccEngineInit();
+void rccEngineFree();
+
+int rccEngineInitContext(rcc_engine_context engine_ctx, rcc_context ctx);
+void rccEngineFreeContext(rcc_engine_context engine_ctx);
rcc_engine_internal rccEngineGetInternal(rcc_engine_context ctx);
+rcc_charset_id rccAutoengineRussian(rcc_engine_context ctx, const char *buf, int len);
+
#endif /* _RCC_ENGINE_H */