GRASS Programmer's Manual
6.4.3(2013)-r
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Macros
Pages
d_opendb.c
Go to the documentation of this file.
1
15
#include <stdlib.h>
16
#include <grass/dbmi.h>
17
#include "
macros.h
"
18
#include "
dbstubs.h
"
19
26
int
db_d_open_database
(
void
)
27
{
28
dbHandle handle;
29
int
stat;
30
31
/* get the arg(s) */
32
db_init_handle
(&handle);
33
DB_RECV_HANDLE
(&handle);
34
35
/* see if there is a database already open */
36
if
(
db__test_database_open
()) {
37
db_error
(
"Multiple open databases not allowed"
);
38
DB_SEND_FAILURE
();
39
return
DB_OK;
40
}
41
42
/* call the procedure */
43
stat =
db_driver_open_database
(&handle);
44
45
/* send the return code */
46
if
(stat != DB_OK) {
47
db_free_handle
(&handle);
48
DB_SEND_FAILURE
();
49
return
DB_OK;
50
}
51
DB_SEND_SUCCESS
();
52
53
/* record the open in the driver state */
54
db__mark_database_open
(
db_get_handle_dbname
(&handle),
55
db_get_handle_dbschema
(&handle));
56
/* DO NOT free the handle since we saved the pointers to the name,path */
57
58
/* no results */
59
return
DB_OK;
60
}
lib
db
dbmi_driver
d_opendb.c
Generated on Sat Oct 5 2013 12:11:06 for GRASS Programmer's Manual by
1.8.4