GContentType

GContentType — Platform-specific content typing

Synopsis


#include <gio/gio.h>

gboolean            g_content_type_equals               (const char *type1,
                                                         const char *type2);
gboolean            g_content_type_is_a                 (const char *type,
                                                         const char *supertype);
gboolean            g_content_type_is_unknown           (const char *type);
char*               g_content_type_get_description      (const char *type);
char*               g_content_type_get_mime_type        (const char *type);
GIcon*              g_content_type_get_icon             (const char *type);
gboolean            g_content_type_can_be_executable    (const char *type);
char*               g_content_type_guess                (const char *filename,
                                                         const guchar *data,
                                                         gsize data_size,
                                                         gboolean *result_uncertain);
GList*              g_content_types_get_registered      (void);

Description

A content type is a platform specific string that defines the type of a file. On unix it is a mime type, on win32 it is an extension string like ".doc", ".txt" or a percieved string like "audio". Such strings can be looked up in the registry at HKEY_CLASSES_ROOT.

Details

g_content_type_equals ()

gboolean            g_content_type_equals               (const char *type1,
                                                         const char *type2);

Compares two content types for equality.

type1 :

a content type string.

type2 :

a content type string.

Returns :

TRUE if the two strings are identical or equivalent, FALSE otherwise.

g_content_type_is_a ()

gboolean            g_content_type_is_a                 (const char *type,
                                                         const char *supertype);

Determines if type is a subset of supertype.

type :

a content type string.

supertype :

a string.

Returns :

TRUE if type is a kind of supertype, FALSE otherwise.

g_content_type_is_unknown ()

gboolean            g_content_type_is_unknown           (const char *type);

Checks if the content type is the generic "unknown" type. On unix this is the "application/octet-stream" mimetype, while on win32 it is "*".

type :

a content type string.

Returns :

TRUE if the type is the unknown type.

g_content_type_get_description ()

char*               g_content_type_get_description      (const char *type);

Gets the human readable description of the content type.

type :

a content type string.

Returns :

a short description of the content type type.

g_content_type_get_mime_type ()

char*               g_content_type_get_mime_type        (const char *type);

Gets the mime-type for the content type. If one is registered

type :

a content type string.

Returns :

the registered mime-type for the given type, or NULL if unknown.

g_content_type_get_icon ()

GIcon*              g_content_type_get_icon             (const char *type);

Gets the icon for a content type.

type :

a content type string.

Returns :

GIcon corresponding to the content type.

g_content_type_can_be_executable ()

gboolean            g_content_type_can_be_executable    (const char *type);

Checks if a content type can be executable. Note that for instance things like text files can be executables (i.e. scripts and batch files).

type :

a content type string.

Returns :

TRUE if the file type corresponds to a type that can be executable, FALSE otherwise.

g_content_type_guess ()

char*               g_content_type_guess                (const char *filename,
                                                         const guchar *data,
                                                         gsize data_size,
                                                         gboolean *result_uncertain);

Guesses the content type based on example data. If the function is uncertain, result_uncertain will be set to TRUE.

filename :

a string.

data :

a stream of data.

data_size :

the size of data.

result_uncertain :

a flag indicating the certainty of the result.

Returns :

a string indicating a guessed content type for the given data.

g_content_types_get_registered ()

GList*              g_content_types_get_registered      (void);

Gets a list of strings containing all the registered content types known to the system. The list and its data should be freed using g_list_foreach(list, g_free, NULL) and g_list_free(list)

Returns :

GList of the registered content types.