Enlightenment CVS committal Author : lordchaos Project : e17 Module : apps/evfs
Dir : e17/apps/evfs/src/include Modified Files: evfs.h evfs_commands.h evfs_io.h evfs_macros.h evfs_plugin.h evfs_server_handle.h Log Message: Added file remove, implemented function pointers for callbacks on plugin init. TODO: Doc this before it gets too complicated =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/evfs/src/include/evfs.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- evfs.h 18 Aug 2005 05:17:58 -0000 1.7 +++ evfs.h 19 Aug 2005 12:15:12 -0000 1.8 @@ -4,9 +4,10 @@ #define _GNU_SOURCE #include "evfs_macros.h" #include "evfs_debug.h" -#include "evfs_plugin.h" + #include <Ecore.h> #include <Ecore_Ipc.h> +#include <Ecore_File.h> #include <pthread.h> @@ -25,6 +26,9 @@ #define EVFS_FUNCTION_FILE_MOVE "evfs_file_move" + + + typedef enum { EVFS_FS_OP_FORCE = 1, @@ -34,9 +38,6 @@ - - - typedef struct evfs_server evfs_server; struct evfs_server { Ecore_Hash* client_hash; @@ -66,7 +67,8 @@ EVFS_CMD_STOPMON_FILE = 2, EVFS_CMD_COPY_FILE = 3, EVFS_CMD_MOVE_FILE = 4, - EVFS_CMD_LIST_DIR = 5 + EVFS_CMD_REMOVE_FILE=5, + EVFS_CMD_LIST_DIR = 6 } evfs_command_type; @@ -100,6 +102,7 @@ struct evfs_file_monitor { evfs_client* client; char* monitor_path; + Ecore_File_Monitor *em; }; @@ -143,7 +146,7 @@ evfs_file_uri_path* evfs_parse_uri(char* uri); void evfs_handle_command(evfs_client* client, evfs_command* command); void evfs_handle_monitor_start_command(evfs_client* client, evfs_command* command); -evfs_plugin* evfs_get_plugin_for_uri(char* uri_base); + unsigned long evfs_server_get_next_id(evfs_server* serve); @@ -154,5 +157,8 @@ #include <evfs_new.h> #include <evfs_event_helper.h> #include <evfs_server_handle.h> +#include "evfs_plugin.h" + +evfs_plugin* evfs_get_plugin_for_uri(char* uri_base); #endif =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/evfs/src/include/evfs_commands.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- evfs_commands.h 15 Aug 2005 08:52:31 -0000 1.1 +++ evfs_commands.h 19 Aug 2005 12:15:12 -0000 1.2 @@ -2,7 +2,7 @@ #define __EVFS_COMMANDS_H_ void evfs_monitor_add(evfs_connection* conn, evfs_filereference* ref); -void evfs_write_file_command(evfs_connection* conn, evfs_command* command); +void evfs_client_file_remove(evfs_connection* conn, evfs_filereference* ref); #endif =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/evfs/src/include/evfs_io.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- evfs_io.h 16 Aug 2005 07:31:40 -0000 1.4 +++ evfs_io.h 19 Aug 2005 12:15:12 -0000 1.5 @@ -37,7 +37,7 @@ void evfs_write_command(evfs_connection* conn, evfs_command* command); void evfs_write_file_command(evfs_connection* conn, evfs_command* command); void evfs_event_client_id_notify(evfs_client* client); - +void evfs_write_file_command(evfs_connection* conn, evfs_command* command); void evfs_write_ecore_ipc_client_message(Ecore_Ipc_Client* client, ecore_ipc_message* msg); void evfs_write_ecore_ipc_server_message(Ecore_Ipc_Server* server, ecore_ipc_message* msg); void evfs_write_event(evfs_client* client, evfs_event* event); =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/evfs/src/include/evfs_macros.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- evfs_macros.h 15 Aug 2005 19:53:57 -0000 1.2 +++ evfs_macros.h 19 Aug 2005 12:15:12 -0000 1.3 @@ -5,4 +5,8 @@ #define LOCK(X) (pthread_mutex_lock(X)) #define UNLOCK(X) (pthread_mutex_unlock(X)) +#define READDIR(dir, de, de_ptr) (de_ptr = readdir(dir)) +#define CTIME(time_ptr, buf) (buf = ctime(time_ptr)) + + #endif =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/evfs/src/include/evfs_plugin.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- evfs_plugin.h 15 Aug 2005 08:52:31 -0000 1.1 +++ evfs_plugin.h 19 Aug 2005 12:15:12 -0000 1.2 @@ -1,10 +1,19 @@ #ifndef __EVFS_PLUGIN_H_ #define __EVFS_PLUGIN_H_ +typedef struct evfs_plugin_functions evfs_plugin_functions; +struct evfs_plugin_functions { + int (*evfs_file_remove)(char* path); + int (*evfs_monitor_start)(evfs_client* client, evfs_command* command); + int (*evfs_monitor_stop)(evfs_client* client, evfs_command* command); +}; + typedef struct evfs_plugin evfs_plugin; struct evfs_plugin { void* dl_ref; char* uri; + + evfs_plugin_functions* functions; }; =================================================================== RCS file: /cvsroot/enlightenment/e17/apps/evfs/src/include/evfs_server_handle.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- evfs_server_handle.h 16 Aug 2005 08:11:34 -0000 1.1 +++ evfs_server_handle.h 19 Aug 2005 12:15:12 -0000 1.2 @@ -1,2 +1,3 @@ void evfs_handle_monitor_start_command(evfs_client* client, evfs_command* command); void evfs_handle_monitor_stop_command(evfs_client* client, evfs_command* command); +void evfs_handle_file_remove_command(evfs_client* client, evfs_command* command); ------------------------------------------------------- SF.Net email is Sponsored by the Better Software Conference & EXPO September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs