GRASS GIS 7 Programmer's Manual  7.5.svn(2017)-r71793
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
gis/open.c File Reference

GIS Library - Open file functions. More...

#include <grass/config.h>
#include <errno.h>
#include <string.h>
#include <unistd.h>
#include <fcntl.h>
#include <grass/gis.h>
#include <grass/glocale.h>
#include "gis_local_proto.h"
Include dependency graph for gis/open.c:

Go to the source code of this file.

Functions

int G_open_new (const char *element, const char *name)
 Open a new database file. More...
 
int G_open_old (const char *element, const char *name, const char *mapset)
 Open a database file for reading. More...
 
int G_open_update (const char *element, const char *name)
 Open a database file for update. More...
 
FILE * G_fopen_new (const char *element, const char *name)
 Open a new database file. More...
 
FILE * G_fopen_old (const char *element, const char *name, const char *mapset)
 Open a database file for reading. More...
 
FILE * G_fopen_append (const char *element, const char *name)
 Open a database file for update (append mode) More...
 
FILE * G_fopen_modify (const char *element, const char *name)
 Open a database file for update (r+ mode) More...
 

Detailed Description

GIS Library - Open file functions.

(C) 1999-2015 by the GRASS Development Team

This program is free software under the GNU General Public License (>=v2). Read the file COPYING that comes with GRASS for details.

Author
USACERL and many others

Definition in file gis/open.c.

Function Documentation

FILE* G_fopen_append ( const char *  element,
const char *  name 
)

Open a database file for update (append mode)

The database file name under the element in the current mapset is opened for for writing. The UNIX fopen() routine, with "a" append mode, is used to open the file. If the file does not exist, the NULL pointer is returned. Otherwise the file descriptor from the fopen() is returned.

Parameters
elementdatabase element name
namemap file name
Returns
open file descriptor (FILE *)
NULL on error

Definition at line 280 of file gis/open.c.

References fd, G_debug(), and G_mapset().

FILE* G_fopen_modify ( const char *  element,
const char *  name 
)

Open a database file for update (r+ mode)

The database file name under the element in the current mapset is opened for for writing. The UNIX fopen() routine, with "r+" append mode, is used to open the file. If the file does not exist, the NULL pointer is returned. Otherwise the file descriptor from the fopen() is returned.

Parameters
elementdatabase element name
namemap file name
Returns
open file descriptor (FILE *)
NULL on error

Definition at line 308 of file gis/open.c.

References fd, G_debug(), and G_mapset().

Referenced by V1_open_new_nat(), V1_open_old_nat(), and Vect__open_old().

FILE* G_fopen_new ( const char *  element,
const char *  name 
)

Open a new database file.

The database file name under the element in the current mapset is created and opened for writing (but not reading). The UNIX fopen() routine, with "w" write mode, is used to open the file. If the file does not exist, the NULL pointer is returned. Otherwise the file is positioned at the end of the file and the file descriptor from the fopen() is returned.

Parameters
elementdatabase element name
namemap file name
Returns
open file descriptor (FILE *)
NULL on error

Definition at line 220 of file gis/open.c.

References fd, G_debug(), and G_mapset().

Referenced by G_put_3dview(), G_put_element_window(), G_write_vector_timestamp(), I_put_group(), Rast__quant_export(), Rast_put_cell_title(), Rast_put_cellhd(), Rast_write_colors(), Rast_write_history(), V1_open_new_nat(), Vect__write_head(), Vect_cidx_save(), Vect_save_frmt(), Vect_save_topo(), Vect_write_colors(), and Vect_write_dblinks().

FILE* G_fopen_old ( const char *  element,
const char *  name,
const char *  mapset 
)

Open a database file for reading.

The database file name under the element in the specified mapset is opened for reading (but not for writing). The UNIX fopen() routine, with "r" read mode, is used to open the file. If the file does not exist, the NULL pointer is returned. Otherwise the file descriptor from the fopen() is returned.

Parameters
elementdatabase element name
namemap file name
mapsetmapset name containing map name
Returns
open file descriptor (FILE *)
NULL on error

Definition at line 253 of file gis/open.c.

References fd, G_debug(), and NULL.

Referenced by G__get_list_of_mapsets(), G_get_3dview(), G_get_element_window(), G_read_vector_timestamp(), I_get_group(), Rast__quant_import(), Rast__read_colors(), Rast_get_cell_title(), Rast_get_cellhd(), Rast_put_cell_title(), Rast_read_history(), S_read(), V1_open_old_nat(), Vect__open_old(), Vect__read_head(), Vect_cidx_open(), Vect_close(), Vect_open_fidx(), Vect_open_sidx(), and Vect_open_topo().

int G_open_new ( const char *  element,
const char *  name 
)

Open a new database file.

Creates name in the current mapset and opens it for write only.

The database file name under the element in the current mapset is created and opened for writing (but not reading). The UNIX open() routine is used to open the file. If the file does not exist, -1 is returned. Otherwise the file is positioned at the end of the file and the file descriptor from the open() is returned.

Parameters
elementdatabase element name
namemap file name
Returns
open file descriptor (int)
-1 could not open

Definition at line 148 of file gis/open.c.

References G_mapset().

int G_open_old ( const char *  element,
const char *  name,
const char *  mapset 
)

Open a database file for reading.

The database file name under the element in the specified mapset is opened for reading (but not for writing). The UNIX open() routine is used to open the file. If the file does not exist, -1 is returned. Otherwise the file descriptor from the open() is returned.

Parameters
elementdatabase element name
namemap file name
mapsetmapset containing map name
Returns
open file descriptor (int)
-1 could not open

Definition at line 170 of file gis/open.c.

Referenced by Rast__open_old().

int G_open_update ( const char *  element,
const char *  name 
)

Open a database file for update.

The database file name under the element in the current mapset is opened for reading and writing. The UNIX open() routine is used to open the file. If the file does not exist, -1 is returned. Otherwise the file is positioned at the end of the file and the file descriptor from the open() is returned.

Parameters
elementdatabase element name
namemap file name
Returns
open file descriptor (int)
-1 could not open

Definition at line 191 of file gis/open.c.

References fd, and G_mapset().