Monitoring

Name

Monitoring -- watch files for changes, and get called back if they do

Synopsis



GnomeVFSResult gnome_vfs_monitor_add        (GnomeVFSMonitorHandle **handle,
                                             const gchar *text_uri,
                                             GnomeVFSMonitorType monitor_type,
                                             GnomeVFSMonitorCallback callback,
                                             gpointer user_data);
GnomeVFSResult gnome_vfs_monitor_cancel     (GnomeVFSMonitorHandle *handle);
enum        GnomeVFSMonitorType;
enum        GnomeVFSMonitorEventType;
void        (*GnomeVFSMonitorCallback)      (GnomeVFSMonitorHandle *handle,
                                             const gchar *monitor_uri,
                                             const gchar *info_uri,
                                             GnomeVFSMonitorEventType event_type,
                                             gpointer user_data);

Description

Details

gnome_vfs_monitor_add ()

GnomeVFSResult gnome_vfs_monitor_add        (GnomeVFSMonitorHandle **handle,
                                             const gchar *text_uri,
                                             GnomeVFSMonitorType monitor_type,
                                             GnomeVFSMonitorCallback callback,
                                             gpointer user_data);

Watch the file or directory at text_uri for changes (or the creation/deletion of the file) and call callback when there is a change. If a directory monitor is added, callback is notified when any file in the directory changes.

handle :

after the call, handle will be a pointer to an operation handle

text_uri :

URI to monitor

monitor_type :

add a directory or file monitor

callback :

function to call when the monitor is tripped

user_data :

data to pass to callback

Returns :

an integer representing the success of the operation


gnome_vfs_monitor_cancel ()

GnomeVFSResult gnome_vfs_monitor_cancel     (GnomeVFSMonitorHandle *handle);

Cancel the monitor pointed to be handle.

handle :

handle of the monitor to cancel

Returns :

an integer representing the success of the operation


enum GnomeVFSMonitorType

typedef enum {
  GNOME_VFS_MONITOR_FILE,
  GNOME_VFS_MONITOR_DIRECTORY
} GnomeVFSMonitorType;


enum GnomeVFSMonitorEventType

typedef enum {
  GNOME_VFS_MONITOR_EVENT_CHANGED,
  GNOME_VFS_MONITOR_EVENT_DELETED,
  GNOME_VFS_MONITOR_EVENT_STARTEXECUTING,
  GNOME_VFS_MONITOR_EVENT_STOPEXECUTING,
  GNOME_VFS_MONITOR_EVENT_CREATED,
  GNOME_VFS_MONITOR_EVENT_METADATA_CHANGED
} GnomeVFSMonitorEventType;


GnomeVFSMonitorCallback ()

void        (*GnomeVFSMonitorCallback)      (GnomeVFSMonitorHandle *handle,
                                             const gchar *monitor_uri,
                                             const gchar *info_uri,
                                             GnomeVFSMonitorEventType event_type,
                                             gpointer user_data);

Function called when a monitor detects a change.

handle :

the handle of the monitor that created the event

monitor_uri :

the URI of the monitor that was triggered

info_uri :

the URI of the actual file this event is concerned with (this can be different from monitor_uri if it was a directory monitor)

event_type :

what happened to info_uri

user_data :

user data passed to gnome_vfs_monitor_add() when the monitor was created