efl/src/lib/ethumb/ethumb_private.h

87 lines
1.4 KiB
C
Raw Normal View History

#ifndef __ETHUMB_PRIVATE_H__
#define __ETHUMB_PRIVATE_H__ 1
#include <Ethumb.h>
#include <Ethumb_Plugin.h>
ecore_cocoa,ethumb: fix compiling after EAPI policy changes Summary: I went through a lot of undefined symbols while compiling ecore_evas_cocoa module and ethumb-related binaries. E.g.: Undefined symbols for architecture x86_64: "_ECORE_COCOA_EVENT_EXPOSE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_GOT_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_LOST_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_RESIZE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_WINDOW_DESTROY", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_init", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_screen_size_get", referenced from: __ecore_evas_screen_geometry_get in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_shutdown", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o __ecore_evas_cocoa_free in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o Undefined symbols for architecture x86_64: "_ethumb_calculate_aspect_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_calculate_fill_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_ecore_evas_get", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_evas_get", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_finished_callback_call", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_image_save", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_image_resize", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_register", referenced from: __module_init in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_unregister", referenced from: __module_shutdown in modules_ethumb_emotion_module_la-emotion.o EAPI was not well re-defined in both cases. It has been handled in ecore_cocoa_private.h and ethumb_private.h. These files must be included after a main library header (because EAPI is undef there). Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2483 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-10 13:58:11 -07:00
#ifdef EAPI
# undef EAPI
#endif
#ifdef _WIN32
# ifdef EFL_BUILD
ecore_cocoa,ethumb: fix compiling after EAPI policy changes Summary: I went through a lot of undefined symbols while compiling ecore_evas_cocoa module and ethumb-related binaries. E.g.: Undefined symbols for architecture x86_64: "_ECORE_COCOA_EVENT_EXPOSE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_GOT_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_LOST_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_RESIZE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_WINDOW_DESTROY", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_init", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_screen_size_get", referenced from: __ecore_evas_screen_geometry_get in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_shutdown", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o __ecore_evas_cocoa_free in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o Undefined symbols for architecture x86_64: "_ethumb_calculate_aspect_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_calculate_fill_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_ecore_evas_get", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_evas_get", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_finished_callback_call", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_image_save", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_image_resize", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_register", referenced from: __module_init in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_unregister", referenced from: __module_shutdown in modules_ethumb_emotion_module_la-emotion.o EAPI was not well re-defined in both cases. It has been handled in ecore_cocoa_private.h and ethumb_private.h. These files must be included after a main library header (because EAPI is undef there). Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2483 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-10 13:58:11 -07:00
# ifdef DLL_EXPORT
# define EAPI __declspec(dllexport)
# else
# define EAPI
# endif
ecore_cocoa,ethumb: fix compiling after EAPI policy changes Summary: I went through a lot of undefined symbols while compiling ecore_evas_cocoa module and ethumb-related binaries. E.g.: Undefined symbols for architecture x86_64: "_ECORE_COCOA_EVENT_EXPOSE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_GOT_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_LOST_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_RESIZE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_WINDOW_DESTROY", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_init", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_screen_size_get", referenced from: __ecore_evas_screen_geometry_get in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_shutdown", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o __ecore_evas_cocoa_free in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o Undefined symbols for architecture x86_64: "_ethumb_calculate_aspect_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_calculate_fill_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_ecore_evas_get", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_evas_get", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_finished_callback_call", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_image_save", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_image_resize", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_register", referenced from: __module_init in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_unregister", referenced from: __module_shutdown in modules_ethumb_emotion_module_la-emotion.o EAPI was not well re-defined in both cases. It has been handled in ecore_cocoa_private.h and ethumb_private.h. These files must be included after a main library header (because EAPI is undef there). Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2483 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-10 13:58:11 -07:00
# else
# define EAPI __declspec(dllimport)
# endif
ecore_cocoa,ethumb: fix compiling after EAPI policy changes Summary: I went through a lot of undefined symbols while compiling ecore_evas_cocoa module and ethumb-related binaries. E.g.: Undefined symbols for architecture x86_64: "_ECORE_COCOA_EVENT_EXPOSE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_GOT_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_LOST_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_RESIZE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_WINDOW_DESTROY", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_init", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_screen_size_get", referenced from: __ecore_evas_screen_geometry_get in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_shutdown", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o __ecore_evas_cocoa_free in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o Undefined symbols for architecture x86_64: "_ethumb_calculate_aspect_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_calculate_fill_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_ecore_evas_get", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_evas_get", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_finished_callback_call", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_image_save", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_image_resize", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_register", referenced from: __module_init in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_unregister", referenced from: __module_shutdown in modules_ethumb_emotion_module_la-emotion.o EAPI was not well re-defined in both cases. It has been handled in ecore_cocoa_private.h and ethumb_private.h. These files must be included after a main library header (because EAPI is undef there). Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2483 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-10 13:58:11 -07:00
#else
# ifdef __GNUC__
# if __GNUC__ >= 4
# define EAPI __attribute__ ((visibility("default")))
# else
# define EAPI
# endif
# else
# define EAPI
# endif
#endif
ecore_cocoa,ethumb: fix compiling after EAPI policy changes Summary: I went through a lot of undefined symbols while compiling ecore_evas_cocoa module and ethumb-related binaries. E.g.: Undefined symbols for architecture x86_64: "_ECORE_COCOA_EVENT_EXPOSE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_GOT_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_LOST_FOCUS", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_RESIZE", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ECORE_COCOA_EVENT_WINDOW_DESTROY", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_init", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_screen_size_get", referenced from: __ecore_evas_screen_geometry_get in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o "_ecore_cocoa_shutdown", referenced from: _ecore_evas_cocoa_new_internal in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o __ecore_evas_cocoa_free in modules_ecore_evas_engines_cocoa_module_la-ecore_evas_cocoa.o Undefined symbols for architecture x86_64: "_ethumb_calculate_aspect_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_calculate_fill_from_ratio", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_ecore_evas_get", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_evas_get", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_finished_callback_call", referenced from: __thumb_generate in modules_ethumb_emotion_module_la-emotion.o __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o __finish_thumb_generation in modules_ethumb_emotion_module_la-emotion.o "_ethumb_image_save", referenced from: __frame_decode_cb in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_image_resize", referenced from: __resize_movie in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_register", referenced from: __module_init in modules_ethumb_emotion_module_la-emotion.o "_ethumb_plugin_unregister", referenced from: __module_shutdown in modules_ethumb_emotion_module_la-emotion.o EAPI was not well re-defined in both cases. It has been handled in ecore_cocoa_private.h and ethumb_private.h. These files must be included after a main library header (because EAPI is undef there). Reviewers: cedric Subscribers: cedric Differential Revision: https://phab.enlightenment.org/D2483 Signed-off-by: Cedric BAIL <cedric@osg.samsung.com>
2015-05-10 13:58:11 -07:00
typedef struct _Ethumb_Frame Ethumb_Frame;
struct _Ethumb_Frame
{
const char *file;
const char *group;
const char *swallow;
Evas_Object *edje;
};
struct _Ethumb
{
const char *thumb_dir;
const char *category;
int tw, th;
int format;
int aspect;
int orientation;
float crop_x, crop_y;
int quality;
int compress;
const char *src_hash;
const char *src_path;
const char *src_key;
const char *thumb_path;
const char *thumb_key;
int rw, rh;
struct
{
double start, time, interval;
unsigned int ntimes, fps;
} video;
struct
{
unsigned int page;
} document;
Ethumb_Frame *frame;
Ecore_Evas *ee, *sub_ee;
Evas *e, *sub_e;
Evas_Object *o, *img;
Ecore_Idler *finished_idler;
Ethumb_Generate_Cb finished_cb;
void *cb_data;
Eina_Free_Cb cb_data_free;
int cb_result;
void *pdata;
Ethumb_Plugin *plugin;
};
#undef EAPI
#define EAPI
#endif /* __ETHUMB_PRIVATE_H__ */