1/*
2 * This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5 *
6 * Copyright 1997 - July 2008 CWI, August 2008 - 2019 MonetDB B.V.
7 */
8
9/*
10 * M.Raasveldt
11 * JIT UDF Interface
12 */
13
14#ifndef _CUDF_LIB_
15#define _CUDF_LIB_
16
17#include "monetdb_config.h"
18#include "mal.h"
19#include "mal_stack.h"
20#include "mal_linker.h"
21#include "gdk_atoms.h"
22#include "gdk_utils.h"
23#include "gdk_posix.h"
24#include "gdk.h"
25#include "sql_catalog.h"
26#include "sql_scenario.h"
27#include "sql_cast.h"
28#include "sql_execute.h"
29#include "sql_storage.h"
30
31// DLL Export Flags
32#ifdef WIN32
33#ifndef LIBCUDF
34#define cudf_export extern __declspec(dllimport)
35#else
36#define cudf_export extern __declspec(dllexport)
37#endif
38#else
39#define cudf_export extern
40#endif
41
42cudf_export str CUDFevalStd(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
43 InstrPtr pci);
44cudf_export str CUDFevalAggr(Client cntxt, MalBlkPtr mb, MalStkPtr stk,
45 InstrPtr pci);
46cudf_export str CUDFprelude(void *ret);
47
48#endif /* _CUDF_LIB_ */
49