From: Enlightenment C. <no...@cv...> - 2006-03-28 10:31:52
|
Enlightenment CVS committal Author : chaos Project : e17 Module : proto Dir : e17/proto/entropy/src/include Modified Files: entropy.h entropy_core.h entropy_generic.h entropy_gui.h entropy_macros.h notification_engine.h plugin_base.h plugin_helper.h Log Message: Whoa! Lots of while-you-were sleeping CVS downtime changes: * Extractor based plugin - middle click a file to try! * Remove pthread nastiness, and begin making *everything* async * Lots of bug fixes * Much improved file cache reference tracking - more stable entropy * Loads more =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/entropy.h,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- entropy.h 19 Mar 2006 10:38:47 -0000 1.26 +++ entropy.h 28 Mar 2006 10:31:14 -0000 1.27 @@ -66,9 +66,10 @@ void generic_file_print(entropy_generic_file* file); entropy_generic_file* entropy_generic_file_clone(entropy_generic_file* file); char* md5_entropy_path_file(char* plugin, char* folder, char* filename); +char* md5_entropy_local_file(char* filename); -/*FS Interaction/EVFS functions*/ +/*,FS Interaction/EVFS functions*/ entropy_generic_file* entropy_core_parse_uri(char* uri); char* entropy_core_generic_file_uri_create (entropy_generic_file* file, int drill_down); entropy_generic_file* evfs_filereference_to_entropy_generic_file(void* ref); =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/entropy_core.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- entropy_core.h 16 Mar 2006 12:22:01 -0000 1.8 +++ entropy_core.h 28 Mar 2006 10:31:14 -0000 1.9 @@ -31,7 +31,6 @@ entropy_notification_engine* notify; entropy_plugin* layout_plugin; /* The main layout plugin that we are relying on */ - pthread_mutex_t file_cache_mutex; Ecore_List* selected_files; Ecore_Hash* descent_hash; =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/entropy_generic.h,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- entropy_generic.h 11 Mar 2006 07:11:34 -0000 1.16 +++ entropy_generic.h 28 Mar 2006 10:31:14 -0000 1.17 @@ -57,6 +57,12 @@ int value; }; +typedef struct Entropy_Metadata_Object Entropy_Metadata_Object; +struct Entropy_Metadata_Object { + const char* key; + const char* value; +}; + #define TYPE_CONTINUE 0 #define TYPE_END 1 =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/entropy_gui.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- entropy_gui.h 22 Feb 2006 13:09:47 -0000 1.9 +++ entropy_gui.h 28 Mar 2006 10:31:14 -0000 1.10 @@ -13,6 +13,8 @@ #define ENTROPY_GUI_EVENT_FILE_STAT "entropy_gui_event_file_stat" //Request a stat of a file #define ENTROPY_GUI_EVENT_FILE_STAT_AVAILABLE "entropy_gui_event_file_stat_available" //Request a stat of a file #define ENTROPY_GUI_EVENT_USER_INTERACTION_YES_NO_ABORT "entropy_gui_event_user_interaction_yes_no_abort" //User needs to respond in some way +#define ENTROPY_GUI_EVENT_FILE_METADATA "entropy_gui_event_file_metadata" +#define ENTROPY_GUI_EVENT_FILE_METADATA_AVAILABLE "entropy_gui_event_file_metadata_available" #define ENTROPY_TOOLKIT_EWL "ewl" =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/entropy_macros.h,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- entropy_macros.h 20 Oct 2005 08:45:54 -0000 1.1 +++ entropy_macros.h 28 Mar 2006 10:31:14 -0000 1.2 @@ -1,3 +0,0 @@ -#define LOCK(X) (pthread_mutex_lock(X)) -#define UNLOCK(X) (pthread_mutex_unlock(X)) - =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/notification_engine.h,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- notification_engine.h 18 Mar 2006 08:04:11 -0000 1.7 +++ notification_engine.h 28 Mar 2006 10:31:14 -0000 1.8 @@ -4,19 +4,21 @@ //#include <pthread.h> enum ENTROPY_NOTIFY_TYPES { - ENTROPY_NOTIFY_GENERIC, - ENTROPY_NOTIFY_THUMBNAIL_REQUEST, - ENTROPY_NOTIFY_FILELIST_REQUEST, - ENTROPY_NOTIFY_FILELIST_REQUEST_EXTERNAL, /*For delayed-response dir-lists, e.g. from evfs*/ - ENTROPY_NOTIFY_FILE_CHANGE, - ENTROPY_NOTIFY_FILE_CREATE, - ENTROPY_NOTIFY_FILE_REMOVE, - ENTROPY_NOTIFY_FILE_REMOVE_DIRECTORY, - ENTROPY_NOTIFY_FILE_ACTION, - ENTROPY_NOTIFY_FILE_STAT_EXECUTED, - ENTROPY_NOTIFY_FILE_STAT_AVAILABLE, - ENTROPY_NOTIFY_FILE_PROGRESS, - ENTROPY_NOTIFY_USER_INTERACTION_YES_NO_ABORT + ENTROPY_NOTIFY_GENERIC = 0, + ENTROPY_NOTIFY_THUMBNAIL_REQUEST =1, + ENTROPY_NOTIFY_FILELIST_REQUEST =2 , + ENTROPY_NOTIFY_FILELIST_REQUEST_EXTERNAL = 3, /*For delayed-response dir-lists, e.g. from evfs*/ + ENTROPY_NOTIFY_FILE_CHANGE = 4, + ENTROPY_NOTIFY_FILE_CREATE = 5, + ENTROPY_NOTIFY_FILE_REMOVE = 6, + ENTROPY_NOTIFY_FILE_REMOVE_DIRECTORY = 7, + ENTROPY_NOTIFY_FILE_ACTION = 8, + ENTROPY_NOTIFY_FILE_STAT_EXECUTED = 9, + ENTROPY_NOTIFY_FILE_STAT_AVAILABLE = 10, + ENTROPY_NOTIFY_FILE_PROGRESS = 11, + ENTROPY_NOTIFY_USER_INTERACTION_YES_NO_ABORT = 12, + ENTROPY_NOTIFY_FILE_METADATA_REQUEST = 13, + ENTROPY_NOTIFY_FILE_METADATA_AVAILABLE = 14 }; typedef struct entropy_notification_engine entropy_notification_engine; @@ -29,9 +31,6 @@ Ecore_Ipc_Server *server; /*Our ref to the IPC engine*/ - pthread_mutex_t op_queue_mutex; - pthread_mutex_t loop_mutex; /*Block on this the whole time*/ - pthread_mutex_t exe_queue_mutex; }; typedef struct entropy_notify_event_cb_data entropy_notify_event_cb_data; @@ -42,7 +41,7 @@ typedef struct entropy_notify_event entropy_notify_event; struct entropy_notify_event { - + int processed; /*A flag to indicate that this event has begun processing*/ int event_type; @@ -54,9 +53,7 @@ Ecore_List* cb_list; Ecore_List* cleanup_list; - void* return_struct; - void* requestor_data; }; @@ -68,7 +65,7 @@ }; -void* entropy_notify_loop(void* data); +int entropy_notify_loop(void* data); entropy_notification_engine* entropy_notification_engine_init(); void entropy_notification_engine_destroy_thread(entropy_notification_engine* engine); void entropy_notification_engine_destroy(entropy_notification_engine* engine); @@ -82,9 +79,13 @@ void entropy_notify_lock_loop(entropy_notification_engine* notify); void entropy_notify_unlock_loop(entropy_notification_engine* notify); -void entropy_notify_event_commit(entropy_notification_engine* engine, entropy_notify_event* ev); +void entropy_notify_event_commit(entropy_notify_event* ev); void entropy_notify_event_bulk_commit(entropy_notification_engine* engine, Ecore_List* events); void entropy_notify_event_cleanup_add(entropy_notify_event* event, void* obj); +void entropy_notify_event_expire_requestor_layout(void*); + +void entropy_notify_lock_malloc(); +void entropy_notify_unlock_malloc(); #define ENTROPY_EVENT_LOCAL 0 =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/plugin_base.h,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- plugin_base.h 20 Feb 2006 06:48:36 -0000 1.4 +++ plugin_base.h 28 Mar 2006 10:31:14 -0000 1.5 @@ -10,13 +10,15 @@ ENTROPY_PLUGIN_THUMBNAILER_DISTRIBUTION, ENTROPY_PLUGIN_GUI_COMPONENT, ENTROPY_PLUGIN_GUI_LAYOUT, - ENTROPY_PLUGIN_ACTION_PROVIDER + ENTROPY_PLUGIN_ACTION_PROVIDER, + ENTROPY_PLUGIN_METADATA_READ, }; enum ENTROPY_PLUGIN_SUB_TYPES { ENTROPY_PLUGIN_SUB_TYPE_ALL, ENTROPY_PLUGIN_GUI_COMPONENT_STRUCTURE_VIEW, - ENTROPY_PLUGIN_GUI_COMPONENT_LOCAL_VIEW + ENTROPY_PLUGIN_GUI_COMPONENT_LOCAL_VIEW, + ENTROPY_PLUGIN_GUI_COMPONENT_INFO_PROVIDER }; =================================================================== RCS file: /cvs/e/e17/proto/entropy/src/include/plugin_helper.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- plugin_helper.h 14 Mar 2006 13:05:43 -0000 1.9 +++ plugin_helper.h 28 Mar 2006 10:31:14 -0000 1.10 @@ -11,5 +11,7 @@ void entropy_plugin_filesystem_file_remove(entropy_generic_file* file, entropy_gui_component_instance*); int entropy_plugin_filesystem_file_copy(entropy_generic_file* source, char* dest, entropy_gui_component_instance* requester); void entropy_plugin_filesystem_directory_create(entropy_generic_file* file, char* dir); +Ecore_List* entropy_plugin_filesystem_filelist_get(entropy_file_request* request); +void entropy_plugin_filesystem_filestat_get(entropy_file_request* request); #endif |