Filesystem

Filesystem — Functions for handling files, directories, links and fifos

Synopsis


#include <ogmrip-fs.h>

void                ogmrip_fs_unref                     (gchar *filename,
                                                         gboolean do_unlink);
gchar*              ogmrip_fs_get_tmp_dir               (void);
void                ogmrip_fs_set_tmp_dir               (const gchar *dir);
gboolean            ogmrip_fs_mkdir                     (const gchar *path,
                                                         mode_t mode,
                                                         GError **error);
gboolean            ogmrip_fs_rmdir                     (const gchar *path,
                                                         gboolean recursive,
                                                         GError **error);
gchar*              ogmrip_fs_mktemp                    (const gchar *tmpl,
                                                         GError **error);
gchar*              ogmrip_fs_mkftemp                   (const gchar *tmpl,
                                                         GError **error);
gchar*              ogmrip_fs_mkdtemp                   (const gchar *tmpl,
                                                         GError **error);
gchar*              ogmrip_fs_lntemp                    (const gchar *oldpath,
                                                         const gchar *newtmpl,
                                                         gboolean symln,
                                                         GError **error);
gint                ogmrip_fs_open_tmp                  (const gchar *tmpl,
                                                         gchar **name_used,
                                                         GError **error);
gchar*              ogmrip_fs_get_full_path             (const gchar *filename);
gint64              ogmrip_fs_get_left_space            (const gchar *filename,
                                                         GError **error);
gchar*              ogmrip_fs_get_mount_point           (const gchar *filename,
                                                         GError **error);
gchar*              ogmrip_fs_get_extension             (const gchar *filename);
gchar*              ogmrip_fs_set_extension             (const gchar *filename,
                                                         const gchar *extension);
gboolean            ogmrip_fs_rename                    (const gchar *old_name,
                                                         const gchar *new_name,
                                                         GError **error);

Description

Details

ogmrip_fs_unref ()

void                ogmrip_fs_unref                     (gchar *filename,
                                                         gboolean do_unlink);

If do_unlink is TRUE, recursively removes filename then frees the memory pointed to by filename.

filename :

A path to a filename

do_unlink :

TRUE to also remove the file

ogmrip_fs_get_tmp_dir ()

gchar*              ogmrip_fs_get_tmp_dir               (void);

Returns OGMRip's temporary directory.

Returns :

The temporaty directory

ogmrip_fs_set_tmp_dir ()

void                ogmrip_fs_set_tmp_dir               (const gchar *dir);

Sets OGMRip's temporary directory. If dir is NULL, OGMRip's temporary directory will be the system's temporary directory.

dir :

The new temporary directory

ogmrip_fs_mkdir ()

gboolean            ogmrip_fs_mkdir                     (const gchar *path,
                                                         mode_t mode,
                                                         GError **error);

Create the all the directories in path, if they do not already exist.

path :

A path of directories

mode :

The file mode

error :

A location to return an error of type G_FILE_ERROR

Returns :

TRUE on success, FALSE if an error was set

ogmrip_fs_rmdir ()

gboolean            ogmrip_fs_rmdir                     (const gchar *path,
                                                         gboolean recursive,
                                                         GError **error);

If recusive is FALSE, removes the directory of path if it is empty. If recusive is TRUE, also removes its content recursively.

path :

A path to a directory

recursive :

TRUE to remove the directory and its content recursively

error :

A location to return an error of type G_FILE_ERROR

Returns :

TRUE on success, FALSE if an error was set

ogmrip_fs_mktemp ()

gchar*              ogmrip_fs_mktemp                    (const gchar *tmpl,
                                                         GError **error);

Creates a file in OGMRip's temporary directory (as returned by ogmrip_fs_get_tmp_dir()).

tmpl :

Template for file name, as in g_mkstemp(), basename only

error :

A location to return an error of type G_FILE_ERROR

Returns :

The actual name used, or NULL

ogmrip_fs_mkftemp ()

gchar*              ogmrip_fs_mkftemp                   (const gchar *tmpl,
                                                         GError **error);

Creates a fifo in OGMRip's temporary directory (as returned by ogmrip_fs_get_tmp_dir()).

tmpl :

Template for fifo name, basename only

error :

A location to return an error of type G_FILE_ERROR

Returns :

The actual name used, or NULL

ogmrip_fs_mkdtemp ()

gchar*              ogmrip_fs_mkdtemp                   (const gchar *tmpl,
                                                         GError **error);

Creates a directory in OGMRip's temporary directory (as returned by ogmrip_fs_get_tmp_dir()).

tmpl :

Template for directory name, basename only

error :

A location to return an error of type G_FILE_ERROR

Returns :

The actual name used, or NULL

ogmrip_fs_lntemp ()

gchar*              ogmrip_fs_lntemp                    (const gchar *oldpath,
                                                         const gchar *newtmpl,
                                                         gboolean symln,
                                                         GError **error);

Creates a link in OGMRip's temporary directory (as * returned by ogmrip_fs_get_tmp_dir()) to æn existing file.

oldpath :

A path to an existing file

newtmpl :

Template for link name, basename only

symln :

TRUE to create a symbolic link

error :

A location to return an error of type G_FILE_ERROR

Returns :

The actual name used, or NULL

ogmrip_fs_open_tmp ()

gint                ogmrip_fs_open_tmp                  (const gchar *tmpl,
                                                         gchar **name_used,
                                                         GError **error);

Opens a file for writing in OGMRip's temporary directory (as returned by g_get_tmp_dir()).

tmpl :

Template for file name, as in g_mkstemp(), basename only

name_used :

Location to store actual name used

error :

A location to return an error of type G_FILE_ERROR

Returns :

A file handle (as from open()) to the file opened for reading and writing. The file is opened in binary mode on platforms where there is a difference. The file handle should be closed with close(). In case of errors, -1 is returned and error will be set.

ogmrip_fs_get_full_path ()

gchar*              ogmrip_fs_get_full_path             (const gchar *filename);

Return the full absolute path of filename.

filename :

The path to an existing filename

Returns :

the full path, or NULL

ogmrip_fs_get_left_space ()

gint64              ogmrip_fs_get_left_space            (const gchar *filename,
                                                         GError **error);

Returns the space left in bytes on the device containing filename.

filename :

A path to a filename

error :

A location to return an error of type G_FILE_ERROR

Returns :

The space left in bytes, or -1

ogmrip_fs_get_mount_point ()

gchar*              ogmrip_fs_get_mount_point           (const gchar *filename,
                                                         GError **error);

Returns the mount point of the device containing filename.

filename :

A path to a filename

error :

A location to return an error of type G_FILE_ERROR

Returns :

The moint point, or NULL

ogmrip_fs_get_extension ()

gchar*              ogmrip_fs_get_extension             (const gchar *filename);

Returns the extension of filename.

filename :

The path to an existing filename

Returns :

The extension, or NULL

ogmrip_fs_set_extension ()

gchar*              ogmrip_fs_set_extension             (const gchar *filename,
                                                         const gchar *extension);

If filename already has an extension, replaces it with extension. If not, appends extension to filename.

filename :

The path to an existing filename

extension :

The new extension

Returns :

The new name of the file, or NULL

ogmrip_fs_rename ()

gboolean            ogmrip_fs_rename                    (const gchar *old_name,
                                                         const gchar *new_name,
                                                         GError **error);

If recusive is FALSE, removes the directory of path if it is empty. If recusive is TRUE, also removes its content recursively.

old_name :

The path to an existing filename

new_name :

The new name of the file

error :

A location to return an error of type G_FILE_ERROR

Returns :

TRUE on success, FALSE if an error was set