gnome-vfs-method
3
GNOME-VFS-2.0 Library

# gnome-vfs-method

## Synopsis

    GnomeVFSMethod*     (*GnomeVFSMethodInitFunc)           (const char *method_name,
                                                             const char *config_args);
    void                (*GnomeVFSMethodShutdownFunc)       (GnomeVFSMethod *method);
    GnomeVFSResult      (*GnomeVFSMethodTruncateFunc)       (GnomeVFSMethod *method,
                                                             GnomeVFSURI *uri,
                                                             GnomeVFSFileSize length,
                                                             GnomeVFSContext *context);
    GnomeVFSResult      (*GnomeVFSMethodTruncateHandleFunc) (GnomeVFSMethod *method,
                                                             GnomeVFSMethodHandle *handle,
                                                             GnomeVFSFileSize length,
                                                             GnomeVFSContext *context);
    #define             VFS_METHOD_HAS_FUNC                 (method,func)
    gboolean            gnome_vfs_method_init               (void);
    GnomeVFSMethod*     gnome_vfs_method_get                (const gchar *name);
    typedef             GnomeVFSTransform;
    GnomeVFSTransform*  gnome_vfs_transform_get             (const gchar *name);

## Description

## Details

### GnomeVFSMethodInitFunc ()

    GnomeVFSMethod*     (*GnomeVFSMethodInitFunc)           (const char *method_name,
                                                             const char *config_args);

`method_name` :

`config_args` :

Returns :

### GnomeVFSMethodShutdownFunc ()

    void                (*GnomeVFSMethodShutdownFunc)       (GnomeVFSMethod *method);

`method` :

### GnomeVFSMethodTruncateFunc ()

    GnomeVFSResult      (*GnomeVFSMethodTruncateFunc)       (GnomeVFSMethod *method,
                                                             GnomeVFSURI *uri,
                                                             GnomeVFSFileSize length,
                                                             GnomeVFSContext *context);

`method` :

`uri` :

`length` :

`context` :

Returns :

### GnomeVFSMethodTruncateHandleFunc ()

    GnomeVFSResult      (*GnomeVFSMethodTruncateHandleFunc) (GnomeVFSMethod *method,
                                                             GnomeVFSMethodHandle *handle,
                                                             GnomeVFSFileSize length,
                                                             GnomeVFSContext *context);

`method` :

`handle` :

`length` :

`context` :

Returns :

### VFS_METHOD_HAS_FUNC()

    #define VFS_METHOD_HAS_FUNC(method,func) ((((char *)&((method)->func)) - ((char *)(method)) < (method)->method_table_size) && method->func != NULL)

`method` :

`func` :

### gnome_vfs_method_init ()

    gboolean            gnome_vfs_method_init               (void);

Initializes the gnome-vfs methods. If already initialized then will simply return `TRUE`.

Returns :

  Returns `TRUE`.

### gnome_vfs_method_get ()

    GnomeVFSMethod*     gnome_vfs_method_get                (const gchar *name);

`name` :

  name of the protocol.

Returns :

  the method handle for the given protocol `name`. `name` could be any protocol which gnome-vfs implements. Like ftp, http, smb etc..

### GnomeVFSTransform

    typedef struct GnomeVFSTransform GnomeVFSTransform;

### gnome_vfs_transform_get ()

    GnomeVFSTransform*  gnome_vfs_transform_get             (const gchar *name);

Get the transform for the method `name`.

`name` :

  name of the method to get the transform of.

Returns :

  a GnomeVFSTransform handle for `name`.