The R Project SVN R-packages

Rev

Rev 3255 | Rev 3307 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3255 mrmanese 1
#include "R.h"
2
#include "Rdefines.h"
3
#include "Rinternals.h"
4
#include "sqlite3.h"
5
 
6
#ifndef __SQLITE_DATAFRAME__
7
#define __SQLITE_DATAFRAME__
8
 
9
#define WORKSPACE_COLUMNS 3
10
 
11
int _is_r_sym(char *sym);
12
int _file_exists(char *filename);
13
int _empty_callback(void *data, int ncols, char **row, char **cols);
14
char *_r2iname(char *internal_name, char *filename);
15
char *_fixname(char *rname);
16
char *_get_full_pathname2(char *relpath);
17
int _sqlite_error(int res);
18
SEXP _getListElement(SEXP list, char *varname);
19
int _expand_buf(int i, int size);
20
const char *_get_column_type(const char *class, int type);
21
int _add_sdf1(char *filename, char *internal_name);
3281 mrmanese 22
SEXP _create_sdf_sexp(const char *iname);
3255 mrmanese 23
int _get_factor_levels1(const char *iname, const char *varname, SEXP var);
24
SEXP _shrink_vector(SEXP vec, int len);
3281 mrmanese 25
int _get_row_count2(const char *table);
26
SEXP _get_rownames(const char *sdf_iname) ;
3255 mrmanese 27
 
3281 mrmanese 28
SEXP sdf_get_variable(SEXP sdf, SEXP name);
29
 
3255 mrmanese 30
#define _sqlite_exec(sql) sqlite3_exec(g_workspace, sql, _empty_callback, NULL, NULL)
3281 mrmanese 31
#ifndef SET_ROWNAMES
32
#define SET_ROWNAMES(x,n) setAttrib(x, R_RowNamesSymbol, n)
33
#endif
3255 mrmanese 34
 
35
/* R object accessors shortcuts */
36
#define CHAR_ELT(str, i) CHAR(STRING_ELT(str,i))
37
 
38
/* SDF object accessors shortcuts */
39
#define SDF_INAME(sdf) CHAR(STRING_ELT(_getListElement(sdf, "iname"),0))
40
#define SVEC_VARNAME(sdf) CHAR(STRING_ELT(_getListElement(sdf, "varname"),0))
41
 
42
/* # of sql buffers */
43
#define NBUFS 4
44
 
45
/* possible var types when stored in sqlite as integer */
46
#define VAR_INTEGER 0
47
#define VAR_FACTOR  1
48
#define VAR_ORDERED 2
49
 
50
 
51
#ifndef __SQLITE_WORKSPACE__
52
extern sqlite3 *g_workspace;
53
extern char *g_sql_buf[NBUFS];
54
extern int g_sql_buf_sz[NBUFS];
55
#endif
56
 
57
#endif