## ev-file-helpers

ev-file-helpers

## Functions

int | ev_mkstemp ()
GFile * | ev_mkstemp_file ()
gchar * | ev_mkdtemp ()
void | ev_tmp_filename_unlink ()
void | ev_tmp_file_unlink ()
void | ev_tmp_uri_unlink ()
gboolean | ev_xfer_uri_simple ()
gchar * | ev_file_get_mime_type ()
gchar * | ev_file_uncompress ()
gchar * | ev_file_compress ()

## Types and Values

enum | EvCompressionType

## Object Hierarchy

        GEnum
        ╰── EvCompressionType

## Description

## Functions

### ev_mkstemp ()

    int
    ev_mkstemp (const char *template,
                char **file_name,
                GError **error);

Creates a temp file in the atril temp directory.

#### Parameters

template | a template string; must contain 'XXXXXX', but not necessarily as a suffix |
file_name | a location to store the filename of the temp file |
error | a location to store a GError |

#### Returns

a file descriptor to the newly created temp file name, or `-1` on error with `error` filled in

### ev_mkstemp_file ()

    GFile *
    ev_mkstemp_file (const char *template,
                     GError **error);

Creates a temp GFile in the atril temp directory. See `ev_mkstemp()` for more information.

#### Parameters

template | a template string; must contain 'XXXXXX', but not necessarily as a suffix |
error | a location to store a GError |

#### Returns

a newly allocated GFile for the newly created temp file name, or `NULL` on error with `error` filled in

### ev_mkdtemp ()

    gchar *
    ev_mkdtemp (const char *template,
                GError **error);

Creates a temp directory in the atril temp directory.

#### Parameters

template | a template string; must end in 'XXXXXX' |
error | a location to store a GError |

#### Returns

a newly allocated string with the temp directory name, or `NULL` on error with `error` filled in

### ev_tmp_filename_unlink ()

    void
    ev_tmp_filename_unlink (const gchar *filename);

### ev_tmp_file_unlink ()

    void
    ev_tmp_file_unlink (GFile *file);

### ev_tmp_uri_unlink ()

    void
    ev_tmp_uri_unlink (const gchar *uri);

### ev_xfer_uri_simple ()

    gboolean
    ev_xfer_uri_simple (const char *from,
                        const char *to,
                        GError **error);

Performs a `g_file_copy()` from `from` to `to` .

#### Parameters

from | the source URI |
to | the target URI |
error | a GError location to store an error, or `NULL` |

#### Returns

`TRUE` on success, or `FALSE` on error with `error` filled in

### ev_file_get_mime_type ()

    gchar *
    ev_file_get_mime_type (const gchar *uri,
                           gboolean fast,
                           GError **error);

Note: on unknown MIME types, this may return NULL without `error` being filled in.

#### Parameters

uri | the URI |
fast | whether to use fast MIME type detection |
error | a GError location to store an error, or `NULL` |

#### Returns

a newly allocated string with the MIME type of the file at `uri` , or `NULL` on error or if the MIME type could not be determined

### ev_file_uncompress ()

    gchar *
    ev_file_uncompress (const gchar *uri,
                        EvCompressionType type,
                        GError **error);

Uncompresses the file at `uri` .

If `type` is `EV_COMPRESSION_NONE`, it does nothing and returns `NULL`.

Otherwise, it returns the filename of a temporary file containing the decompressed data from the file at `uri` . On error it returns `NULL` and fills in `error` .

It is the caller's responsibility to unlink the temp file after use.

#### Parameters

uri | a file URI |
type | the compression type |
error | a GError location to store an error, or `NULL` |

#### Returns

a newly allocated string URI, or `NULL` on error

### ev_file_compress ()

    gchar *
    ev_file_compress (const gchar *uri,
                      EvCompressionType type,
                      GError **error);

Compresses the file at `uri` .

If `type` is `EV_COMPRESSION_NONE`, it does nothing and returns `NULL`.

Otherwise, it returns the filename of a temporary file containing the compressed data from the file at `uri` .

On error it returns `NULL` and fills in `error` .

It is the caller's responsibility to unlink the temp file after use.

#### Parameters

uri | a file URI |
type | the compression type |
error | a GError location to store an error, or `NULL` |

#### Returns

a newly allocated string URI, or `NULL` on error

## Types and Values

### enum EvCompressionType

#### Members

EV_COMPRESSION_NONE |  |
EV_COMPRESSION_BZIP2 |  |
EV_COMPRESSION_GZIP |  |
EV_COMPRESSION_LZMA |  |