tiny api addition to allow adding a data pointer to a watch

SVN revision: 53332
This commit is contained in:
Mike Blumenkrantz 2010-10-13 02:53:35 +00:00
parent 0e74073215
commit b98d451da0
2 changed files with 35 additions and 0 deletions

View File

@ -216,6 +216,8 @@ typedef void(*Eeze_Udev_Watch_Cb)(const char *, Eeze_Udev_Event, void *, Eeze_Ud
EAPI Eeze_Udev_Watch *eeze_udev_watch_add(Eeze_Udev_Type type, int event, Eeze_Udev_Watch_Cb cb, void *user_data);
EAPI void *eeze_udev_watch_del(Eeze_Udev_Watch *watch);
EAPI void eeze_udev_watch_data_set(Eeze_Udev_Watch *watch, void *data);
EAPI void *eeze_udev_watch_data_get(Eeze_Udev_Watch *watch);
#ifdef __cplusplus
}

View File

@ -15,6 +15,7 @@ struct Eeze_Udev_Watch
_udev_monitor *mon;
Ecore_Fd_Handler *handler;
Eeze_Udev_Type type;
void *data;
};
/* private */
@ -412,3 +413,35 @@ eeze_udev_watch_del(Eeze_Udev_Watch * watch)
free(watch);
return ret;
}
/**
* Associate data with a watch
* @p watch The watch to associate with
* @p data The data to associate
* This function is used to associate a data pointer with a watch
* object for later retrieval.
*/
EAPI void
eeze_udev_watch_data_set(Eeze_Udev_Watch *watch, void *data)
{
if ((!watch) || (!watch->mon) || (!watch->handler))
return;
watch->data = data;
}
/**
* Retrieve associated data from a watch
* @p watch The watch the data is associated
* @return The data associated
* This function is used to retrieve the data pointer which has been
* previously associated with a watch.
*/
EAPI void *
eeze_udev_watch_data_get(Eeze_Udev_Watch *watch)
{
if ((!watch) || (!watch->mon) || (!watch->handler))
return NULL;
return watch->data;
}