The R Project SVN R-packages

Rev

Rev 3281 | Rev 3308 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3281 Rev 3307
Line 6... Line 6...
6
#ifndef __SQLITE_DATAFRAME__
6
#ifndef __SQLITE_DATAFRAME__
7
#define __SQLITE_DATAFRAME__
7
#define __SQLITE_DATAFRAME__
8
 
8
 
9
#define WORKSPACE_COLUMNS 3
9
#define WORKSPACE_COLUMNS 3
10
 
10
 
-
 
11
/* utilities for checking characteristics of arg */
11
int _is_r_sym(char *sym);
12
int _is_r_sym(char *sym);
12
int _file_exists(char *filename);
13
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);
14
int _sdf_exists2(char *iname);
16
char *_get_full_pathname2(char *relpath);
-
 
-
 
15
 
17
int _sqlite_error(int res);
16
/* sdf utilities */
18
SEXP _getListElement(SEXP list, char *varname);
17
SEXP _create_sdf_sexp(const char *iname);  /* create a SEXP for an SDF */
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);
18
int _add_sdf1(char *filename, char *internal_name); /* add SDF to workspace */
22
SEXP _create_sdf_sexp(const char *iname);
-
 
23
int _get_factor_levels1(const char *iname, const char *varname, SEXP var);
19
int _get_factor_levels1(const char *iname, const char *varname, SEXP var);
24
SEXP _shrink_vector(SEXP vec, int len);
-
 
25
int _get_row_count2(const char *table);
20
int _get_row_count2(const char *table);
26
SEXP _get_rownames(const char *sdf_iname) ;
21
SEXP _get_rownames(const char *sdf_iname);
-
 
22
char *_get_full_pathname2(char *relpath); /* get full path given relpath, used in workspace mgmt */
-
 
23
 
-
 
24
/* utilities for creating SDF's */
-
 
25
char *_create_sdf_skeleton2(SEXP name, int *o_namelen);
-
 
26
 
-
 
27
/* R utilities */
-
 
28
SEXP _getListElement(SEXP list, char *varname);
-
 
29
SEXP _shrink_vector(SEXP vec, int len); /* shrink vector size */
27
 
30
 
-
 
31
/* sqlite utilities */
-
 
32
int _empty_callback(void *data, int ncols, char **row, char **cols);
-
 
33
int _sqlite_error(int res);
-
 
34
const char *_get_column_type(const char *class, int type); /* get sqlite type corresponding to R class & type */
-
 
35
 
-
 
36
/* global buffer (g_sql_buf) utilities */
-
 
37
int _expand_buf(int i, int size);  /* expand ith buf if size > buf[i].size */
-
 
38
 
-
 
39
 
-
 
40
/* sqlite.vector utilities */
28
SEXP sdf_get_variable(SEXP sdf, SEXP name);
41
SEXP sdf_get_variable(SEXP sdf, SEXP name);
29
 
42
 
-
 
43
/* misc utilities */
-
 
44
char *_r2iname(char *internal_name, char *filename);
-
 
45
char *_fixname(char *rname);
-
 
46
 
-
 
47
/* register functions to sqlite */
-
 
48
void __register_vector_math();
-
 
49
 
30
#define _sqlite_exec(sql) sqlite3_exec(g_workspace, sql, _empty_callback, NULL, NULL)
50
#define _sqlite_exec(sql) sqlite3_exec(g_workspace, sql, _empty_callback, NULL, NULL)
31
#ifndef SET_ROWNAMES
51
#ifndef SET_ROWNAMES
32
#define SET_ROWNAMES(x,n) setAttrib(x, R_RowNamesSymbol, n)
52
#define SET_ROWNAMES(x,n) setAttrib(x, R_RowNamesSymbol, n)
33
#endif
53
#endif
34
 
54
 
Line 45... Line 65...
45
/* possible var types when stored in sqlite as integer */
65
/* possible var types when stored in sqlite as integer */
46
#define VAR_INTEGER 0
66
#define VAR_INTEGER 0
47
#define VAR_FACTOR  1
67
#define VAR_FACTOR  1
48
#define VAR_ORDERED 2
68
#define VAR_ORDERED 2
49
 
69
 
-
 
70
/* detail constants (see _get_sdf_detail2 in sqlite_workspace.c) */
-
 
71
#define SDF_DETAIL_EXISTS 0
-
 
72
#define SDF_DETAIL_FULLFILENAME 1
50
 
73
 
51
#ifndef __SQLITE_WORKSPACE__
74
#ifndef __SQLITE_WORKSPACE__
52
extern sqlite3 *g_workspace;
75
extern sqlite3 *g_workspace;
53
extern char *g_sql_buf[NBUFS];
76
extern char *g_sql_buf[NBUFS];
54
extern int g_sql_buf_sz[NBUFS];
77
extern int g_sql_buf_sz[NBUFS];