| Top |  |  |  |  | 
| GFile * | (*GVfsFileLookupFunc) () | 
| GFile * | g_vfs_get_file_for_path () | 
| GFile * | g_vfs_get_file_for_uri () | 
| GFile * | g_vfs_parse_name () | 
| GVfs * | g_vfs_get_default () | 
| GVfs * | g_vfs_get_local () | 
| gboolean | g_vfs_is_active () | 
| const gchar * const * | g_vfs_get_supported_uri_schemes () | 
| gboolean | g_vfs_register_uri_scheme () | 
| gboolean | g_vfs_unregister_uri_scheme () | 
GFile * (*GVfsFileLookupFunc) (GVfs *vfs,const char *identifier,gpointer user_data);
This function type is used by g_vfs_register_uri_scheme() to make it
possible for a client to associate an URI scheme to a different GFile
implementation.
The client should return a reference to the new file that has been
created for uri
, or NULL to continue with the default implementation.
| vfs | a GVfs | |
| identifier | the identifier to lookup a GFile for. This can either
be an URI or a parse name as returned by  | |
| user_data | user data passed to the function | 
Since: 2.50
GFile * g_vfs_get_file_for_path (GVfs *vfs,const char *path);
Gets a GFile for path
.
GFile * g_vfs_get_file_for_uri (GVfs *vfs,const char *uri);
Gets a GFile for uri
.
This operation never fails, but the returned object might not support any I/O operation if the URI is malformed or if the URI scheme is not supported.
GFile * g_vfs_parse_name (GVfs *vfs,const char *parse_name);
This operation never fails, but the returned object might
not support any I/O operations if the parse_name
 cannot
be parsed by the GVfs module.
 a GFile for the given parse_name
.
Free the returned object with g_object_unref(). 
[transfer full]
const gchar * const *
g_vfs_get_supported_uri_schemes (GVfs *vfs);
Gets a list of URI schemes supported by vfs
.
 a NULL-terminated array of strings.
The returned array belongs to GIO and must
not be freed or modified. 
[transfer none]
gboolean g_vfs_register_uri_scheme (GVfs *vfs,const char *scheme,GVfsFileLookupFunc uri_func,gpointer uri_data,GDestroyNotify uri_destroy,GVfsFileLookupFunc parse_name_func,gpointer parse_name_data,GDestroyNotify parse_name_destroy);
Registers uri_func
 and parse_name_func
 as the GFile URI and parse name
lookup functions for URIs with a scheme matching scheme
.
Note that scheme
 is registered only within the running application, as
opposed to desktop-wide as it happens with GVfs backends.
When a GFile is requested with an URI containing scheme
 (e.g. through
g_file_new_for_uri()), uri_func
 will be called to allow a custom
constructor. The implementation of uri_func
 should not be blocking, and
must not call g_vfs_register_uri_scheme() or g_vfs_unregister_uri_scheme().
When g_file_parse_name() is called with a parse name obtained from such file,
parse_name_func
 will be called to allow the GFile to be created again. In
that case, it's responsibility of parse_name_func
 to make sure the parse
name matches what the custom GFile implementation returned when
g_file_get_parse_name() was previously called. The implementation of
parse_name_func
 should not be blocking, and must not call
g_vfs_register_uri_scheme() or g_vfs_unregister_uri_scheme().
It's an error to call this function twice with the same scheme. To unregister
a custom URI scheme, use g_vfs_unregister_uri_scheme().
| vfs | a GVfs | |
| scheme | an URI scheme, e.g. "http" | |
| uri_func | [scope notified][nullable] | |
| uri_data |  custom data passed to be passed to  | [nullable] | 
| uri_destroy |  function to be called when unregistering the
URI scheme, or when  | [nullable] | 
| parse_name_func | [scope notified][nullable] | |
| parse_name_data |  custom data passed to be passed to
 | [nullable] | 
| parse_name_destroy |  function to be called when unregistering the
URI scheme, or when  | [nullable] | 
 TRUE if scheme
was successfully registered, or FALSE if a handler
for scheme
already exists.
Since: 2.50
gboolean g_vfs_unregister_uri_scheme (GVfs *vfs,const char *scheme);
Unregisters the URI handler for scheme
 previously registered with
g_vfs_register_uri_scheme().
 TRUE if scheme
was successfully unregistered, or FALSE if a
handler for scheme
does not exist.
Since: 2.50
#define G_VFS_EXTENSION_POINT_NAME "gio-vfs"
Extension point for GVfs functionality. See Extending GIO.