GRASS GIS 8 Programmer's Manual
8.5.0dev(2024)-36359e2344
|
GIS Library - Temporary file functions. More...
#include <string.h>
#include <unistd.h>
#include <sys/stat.h>
#include <stdlib.h>
#include <grass/gis.h>
#include "gis_local_proto.h"
Go to the source code of this file.
Functions | |
void | G_init_tempfile (void) |
Initialize environment for creating tempfiles. More... | |
char * | G_tempfile (void) |
Returns a temporary file name. More... | |
char * | G_tempfile_basedir (const char *basedir) |
Returns a temporary file name. More... | |
char * | G_tempfile_pid (int pid) |
Create tempfile from process id. More... | |
char * | G_tempfile_pid_basedir (int pid, const char *basedir) |
Create tempfile from process id in given base directory. More... | |
void | G_temp_element (char *element) |
Populates element with a path string. More... | |
void | G__temp_element (char *element, int tmp) |
Populates element with a path string (internal use only!) More... | |
void | G__temp_element_basedir (char *element, const char *basedir) |
Populates element with a path string (internal use only!) More... | |
GIS Library - Temporary file functions.
(C) 2001-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.
Definition in file tempfile.c.
void G__temp_element | ( | char * | element, |
int | tmp | ||
) |
Populates element with a path string (internal use only!)
[out] | element | element name |
tmp | TRUE to use G_make_mapset_element_tmp() instead of G_make_mapset_element() |
Definition at line 159 of file tempfile.c.
Referenced by G_temp_element(), and Vect__get_path().
void G__temp_element_basedir | ( | char * | element, |
const char * | basedir | ||
) |
Populates element with a path string (internal use only!)
[out] | element | element name |
tmp | TRUE to use G_make_mapset_element_tmp() instead of G_make_mapset_element() |
Definition at line 185 of file tempfile.c.
References G__machine_name(), G_debug(), G_make_mapset_object_group(), G_make_mapset_object_group_basedir(), NULL, and strcpy.
Referenced by G_tempfile_pid_basedir().
void G_init_tempfile | ( | void | ) |
Initialize environment for creating tempfiles.
Definition at line 29 of file tempfile.c.
References G_is_initialized().
Referenced by G_init_all(), G_tempfile_pid(), and G_tempfile_pid_basedir().
void G_temp_element | ( | char * | element | ) |
Populates element with a path string.
[out] | element | element name |
Definition at line 147 of file tempfile.c.
References FALSE, and G__temp_element().
Referenced by G_tempfile_pid(), and main().
char* G_tempfile | ( | void | ) |
Returns a temporary file name.
This routine returns a pointer to a string containing a unique temporary file name that can be used as a temporary file within the module. Successive calls to G_tempfile() will generate new names. Only the file name is generated. The file itself is not created. To create the file, the module must use standard UNIX functions which create and open files, e.g., creat() or fopen().
Successive calls will generate different names the names are of the form pid.n where pid is the programs process id number and n is a unique identifier.
Note: It is recommended to unlink() (remove) the temp file on exit/error. Only if GRASS is left with 'exit', the GIS mapset management will clean up the temp directory (ETC/clean_temp).
Definition at line 62 of file tempfile.c.
References G_tempfile_pid().
char* G_tempfile_basedir | ( | const char * | basedir | ) |
Returns a temporary file name.
Similar to G_tempfile(), but the temporary file name will include a provided base directory instead of the path to the current mapset.
Definition at line 77 of file tempfile.c.
References G_tempfile_pid_basedir().
char* G_tempfile_pid | ( | int | pid | ) |
Create tempfile from process id.
See G_tempfile().
pid |
Definition at line 90 of file tempfile.c.
References G_counter_next(), G_init_tempfile(), G_temp_element(), GNAME_MAX, GPATH_MAX, and name.
Referenced by G_tempfile().
char* G_tempfile_pid_basedir | ( | int | pid, |
const char * | basedir | ||
) |
Create tempfile from process id in given base directory.
See G_tempfile_basedir().
pid |
Definition at line 120 of file tempfile.c.
References G__temp_element_basedir(), G_counter_next(), G_init_tempfile(), GNAME_MAX, GPATH_MAX, and name.
Referenced by G_tempfile_basedir().