GRASS GIS 8 Programmer's Manual  8.5.0dev(2024)-d6dec75dd4
sigfile.c
Go to the documentation of this file.
1 /*!
2  \file lib/imagery/sigfile.c
3 
4  \brief Imagery Library - Signature file functions (statistics for i.maxlik).
5 
6  (C) 2001-2008, 2013, 2021 by the GRASS Development Team
7 
8  This program is free software under the GNU General Public License
9  (>=v2). Read the file COPYING that comes with GRASS for details.
10 
11  \author USA CERL
12  */
13 
14 #include <string.h>
15 #include <grass/imagery.h>
16 
17 /*!
18  \brief Create signature file
19 
20  Returns a pointer to FILE for writing signature file.
21  Use fclose on the pointer to close after use.
22 
23  \param name signature filename
24 
25  \return pointer to FILE
26  \return NULL on error
27  */
28 FILE *I_fopen_signature_file_new(const char *name)
29 {
30  char dir[GNAME_MAX];
31  FILE *fd;
32 
33  /* create sig directory */
36  fd = G_fopen_new_misc(dir, "sig", name);
37 
38  return fd;
39 }
40 
41 /*!
42  \brief Open existing signature file
43 
44  Use fully qualified names for signatures from other mapsets.
45 
46  Returns a pointer to FILE with signature. Use fclose on the pointer
47  after use.
48 
49  \param name signature filename
50 
51  \return pointer to FILE
52  \return NULL on error
53  */
54 FILE *I_fopen_signature_file_old(const char *name)
55 {
56  char sig_name[GNAME_MAX], sig_mapset[GMAPSET_MAX];
57  char dir[GNAME_MAX];
58  FILE *fd;
59 
60  if (G_unqualified_name(name, NULL, sig_name, sig_mapset) == 0)
61  strcpy(sig_mapset, G_mapset());
62 
64  fd = G_fopen_old_misc(dir, "sig", sig_name, sig_mapset);
65 
66  return fd;
67 }
#define NULL
Definition: ccmath.h:32
FILE * G_fopen_old_misc(const char *, const char *, const char *, const char *)
open a database misc file for reading
Definition: open_misc.c:205
int G_unqualified_name(const char *, const char *, char *, char *)
Returns unqualified map name (without @ mapset)
Definition: nme_in_mps.c:134
FILE * G_fopen_new_misc(const char *, const char *, const char *)
open a new database misc file
Definition: open_misc.c:178
const char * G_mapset(void)
Get current mapset name.
Definition: gis/mapset.c:33
void I_make_signatures_dir(I_SIGFILE_TYPE)
Make signature dir.
void I_get_signatures_dir(char *, I_SIGFILE_TYPE)
Get signature directory.
#define GMAPSET_MAX
Definition: gis.h:192
#define GNAME_MAX
Definition: gis.h:191
@ I_SIGFILE_TYPE_SIG
Definition: imagery.h:194
const char * name
Definition: named_colr.c:6
#define strcpy
Definition: parson.c:62
FILE * I_fopen_signature_file_old(const char *name)
Open existing signature file.
Definition: sigfile.c:54
FILE * I_fopen_signature_file_new(const char *name)
Create signature file.
Definition: sigfile.c:28