![]() |
![]() |
![]() |
GnomeVFS - Filesystem Abstraction library | ![]() |
---|
MonitoringMonitoring — 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 >> |