Loading...
Searching...
No Matches
basename.c File Reference

GIS Library - Program basename routines. More...

`#include <grass/gis.h>`
`#include <math.h>`
`#include <stdio.h>`
`#include <ctype.h>`
`#include <string.h>`
`#include <stdlib.h>`
Include dependency graph for basename.c:

Go to the source code of this file.

## Functions

char * | G_basename (char *filename, const char *desired_ext)
| Truncates filename to the base part (before the last '.') if it matches the extension, otherwise leaves it unchanged.
size_t | G_get_num_decimals (const char *str)
| Get number of decimals from a string.
char * | G_double_to_basename_format (double number, size_t ndigits, size_t ndecimals)
| Convert a double to a string substituting the dot with underscore 12.3456 => '12_3456'.
char * | G_get_basename_separator (void)
| Return the environmental basename variable or the default value.
char * | G_join_basename_strings (const char **strings, size_t len)
| join an array of strings using the basename separator
char * | G_generate_basename (const char *basename, double number, size_t ndigits, size_t ndecimals)
| Generate the format string.

## Detailed Description

GIS Library - Program basename routines.

(C) 2001-2014 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
  GRASS Development Team

Definition in file basename.c.

## Function Documentation

## G_basename()

char * G_basename | ( | char * | filename,
|  | const char * | desired_ext )

Truncates filename to the base part (before the last '.') if it matches the extension, otherwise leaves it unchanged.

Checks if a filename matches a certain file extension (case insensitive) and if so, truncates the string to the base file name (cf. basename Unix command)

Parameters

  filename | string containing filename
  desired_ext | string containing extension to look for (case insensitive)

Returns
  pointer to filename

Definition at line 36 of file basename.c.

References G_strcasecmp().

Referenced by G_parser(), and G_set_program_name().

## G_double_to_basename_format()

char * G_double_to_basename_format | ( | double | number,
|  | size_t | ndigits,
|  | size_t | ndecimals )

Convert a double to a string substituting the dot with underscore 12.3456 => '12_3456'.

Parameters

  number | the double number that will be converted to string
  ndigits | the number of integer digits in the output string
  ndecimals | the number of decimals in the output string

Returns
  a formatted string

Definition at line 76 of file basename.c.

Referenced by G_generate_basename().

## G_generate_basename()

char * G_generate_basename | ( | const char * | basename,
|  | double | number,
|  | size_t | ndigits,
|  | size_t | ndecimals )

Generate the format string.

Parameters

  basename | String with the basename
  number | The double number that will be converted to string
  ndigits | The number of integer digits in the output string
  ndecimals | The number of decimals in the output string

Returns
  Format string

Definition at line 163 of file basename.c.

References G_double_to_basename_format(), and G_get_basename_separator().

## G_get_basename_separator()

char * G_get_basename_separator | ( | void |  | ) |

Return the environmental basename variable or the default value.

return pointer to basename separator

Definition at line 110 of file basename.c.

References NULL.

Referenced by G_generate_basename(), and G_join_basename_strings().

## G_get_num_decimals()

size_t G_get_num_decimals | ( | const char * | str | ) |

Get number of decimals from a string.

Parameters

  str | String to analyse

Returns
  number of decimals

Definition at line 54 of file basename.c.

References NULL.

## G_join_basename_strings()

char * G_join_basename_strings | ( | const char ** | strings,
|  | size_t | len )

join an array of strings using the basename separator

Parameters

  strings | is an array of strings
  len | is the length of the array

Returns
  a joined string

Definition at line 127 of file basename.c.

References G_get_basename_separator(), and strcpy.