![]() | ![]() | ![]() | GnomeVFS - Filesystem Abstraction library | ![]() |
---|
Monitoring — watch files for changes, and get called back if they do
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);
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 |
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 |
typedef enum { GNOME_VFS_MONITOR_FILE, GNOME_VFS_MONITOR_DIRECTORY } GnomeVFSMonitorType;
Type of resources that can be monitored.
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;
Types of events that can be monitored.
GNOME_VFS_MONITOR_EVENT_CHANGED | file data changed |
GNOME_VFS_MONITOR_EVENT_DELETED | file deleted event |
GNOME_VFS_MONITOR_EVENT_STARTEXECUTING | |
GNOME_VFS_MONITOR_EVENT_STOPEXECUTING | |
GNOME_VFS_MONITOR_EVENT_CREATED | file created event |
GNOME_VFS_MONITOR_EVENT_METADATA_CHANGED | file metadata changed |
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 |
<< Advanced Operations | Cancellation >> |