summaryrefslogtreecommitdiff
path: root/src/lib/evas/include/evas_common_private.h
diff options
context:
space:
mode:
authorsubhransu mohanty <sub.mohanty@samsung.com>2017-11-09 10:31:12 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2017-11-10 11:20:38 +0900
commitaacf277c3affcc68806020c1f9e7a44829e1bb74 (patch)
tree8c5cadd81b8d96b27db889d5df6a5ab3ff3aa9ca /src/lib/evas/include/evas_common_private.h
parentd4a2b2025bd1e7396de74c0becb09d4ecbf3b6b9 (diff)
evas/vg: added support for engine surface cache.
Diffstat (limited to 'src/lib/evas/include/evas_common_private.h')
-rw-r--r--src/lib/evas/include/evas_common_private.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/lib/evas/include/evas_common_private.h b/src/lib/evas/include/evas_common_private.h
index 4f731d4e79..6518b16f93 100644
--- a/src/lib/evas/include/evas_common_private.h
+++ b/src/lib/evas/include/evas_common_private.h
@@ -1174,6 +1174,34 @@ typedef enum _Evas_Render_Mode
1174void evas_common_rgba_image_scalecache_items_ref(Image_Entry *ie, Eina_Array *ret); 1174void evas_common_rgba_image_scalecache_items_ref(Image_Entry *ie, Eina_Array *ret);
1175void evas_common_rgba_image_scalecache_item_unref(Image_Entry *ie); 1175void evas_common_rgba_image_scalecache_item_unref(Image_Entry *ie);
1176 1176
1177// Generic Cache
1178typedef struct _Generic_Cache Generic_Cache;
1179typedef struct _Generic_Cache_Entry Generic_Cache_Entry;
1180
1181struct _Generic_Cache_Entry
1182{
1183 void *key; // pointer
1184 void *data; // engine image
1185 int ref;
1186};
1187
1188typedef void (*Generic_Cache_Free)(void *user_data, void *data);
1189
1190struct _Generic_Cache
1191{
1192 Eina_Hash *hash;
1193 Eina_List *lru_list;
1194 void *user_data;
1195 Generic_Cache_Free free_func;
1196};
1197
1198EAPI Generic_Cache* generic_cache_new(void *user_data, Generic_Cache_Free func);
1199EAPI void generic_cache_destroy(Generic_Cache *cache);
1200EAPI void generic_cache_dump(Generic_Cache *cache);
1201EAPI void generic_cache_data_set(Generic_Cache *cache, void *key, void *data);
1202EAPI void *generic_cache_data_get(Generic_Cache *cache, void *key);
1203EAPI void generic_cache_data_drop(Generic_Cache *cache, void *key);
1204
1177/*****************************************************************************/ 1205/*****************************************************************************/
1178 1206
1179#ifdef __cplusplus 1207#ifdef __cplusplus