1 #ifndef EMOTION_PRIVATE_H 2 #define EMOTION_PRIVATE_H 3 4 #include <Evas.h> 5 #include <Eet.h> 6 #include "Emotion.h" 7 8 Eina_Bool emotion_webcam_init(void); 9 void emotion_webcam_shutdown(void); 10 11 Eina_Bool emotion_modules_init(void); 12 void emotion_modules_shutdown(void); 13 14 extern int _emotion_log_domain; 15 extern Eina_Prefix *_emotion_pfx; 16 17 #define DBG(...) EINA_LOG_DOM_DBG(_emotion_log_domain, __VA_ARGS__) 18 #define INF(...) EINA_LOG_DOM_INFO(_emotion_log_domain, __VA_ARGS__) 19 #define WRN(...) EINA_LOG_DOM_WARN(_emotion_log_domain, __VA_ARGS__) 20 #define ERR(...) EINA_LOG_DOM_ERR(_emotion_log_domain, __VA_ARGS__) 21 #define CRI(...) EINA_LOG_DOM_CRIT(_emotion_log_domain, __VA_ARGS__) 22 23 #include "emotion_modules.h" 24 25 typedef struct _Emotion_Engine_Instance Emotion_Engine_Instance; 26 27 Emotion_Engine_Instance *emotion_engine_instance_new(const char *name, Evas_Object *obj, Emotion_Module_Options *opts); 28 void emotion_engine_instance_del(Emotion_Engine_Instance *inst); 29 Eina_Bool emotion_engine_instance_name_equal(const Emotion_Engine_Instance *inst, const char *name); 30 void *emotion_engine_instance_data_get(const Emotion_Engine_Instance *inst); 31 32 Eina_Bool emotion_engine_instance_file_open(Emotion_Engine_Instance *inst, const char *file); 33 void emotion_engine_instance_file_close(Emotion_Engine_Instance *inst); 34 void emotion_engine_instance_play(Emotion_Engine_Instance *inst, double pos); 35 void emotion_engine_instance_stop(Emotion_Engine_Instance *inst); 36 void emotion_engine_instance_size_get(const Emotion_Engine_Instance *inst, int *w, int *h); 37 void emotion_engine_instance_pos_set(Emotion_Engine_Instance *inst, double pos); 38 double emotion_engine_instance_len_get(const Emotion_Engine_Instance *inst); 39 double emotion_engine_instance_buffer_size_get(const Emotion_Engine_Instance *inst); 40 int emotion_engine_instance_fps_num_get(const Emotion_Engine_Instance *inst); 41 int emotion_engine_instance_fps_den_get(const Emotion_Engine_Instance *inst); 42 double emotion_engine_instance_fps_get(const Emotion_Engine_Instance *inst); 43 double emotion_engine_instance_pos_get(const Emotion_Engine_Instance *inst); 44 void emotion_engine_instance_vis_set(Emotion_Engine_Instance *inst, Emotion_Vis vis); 45 Emotion_Vis emotion_engine_instance_vis_get(const Emotion_Engine_Instance *inst); 46 Eina_Bool emotion_engine_instance_vis_supported(Emotion_Engine_Instance *inst, Emotion_Vis vis); 47 double emotion_engine_instance_ratio_get(const Emotion_Engine_Instance *inst); 48 Eina_Bool emotion_engine_instance_video_handled(Emotion_Engine_Instance *inst); 49 Eina_Bool emotion_engine_instance_audio_handled(Emotion_Engine_Instance *inst); 50 Eina_Bool emotion_engine_instance_seekable(Emotion_Engine_Instance *inst); 51 void emotion_engine_instance_frame_done(Emotion_Engine_Instance *inst); 52 Emotion_Format emotion_engine_instance_format_get(const Emotion_Engine_Instance *inst); 53 void emotion_engine_instance_video_data_size_get(const Emotion_Engine_Instance *inst, int *w, int *h); 54 Eina_Bool emotion_engine_instance_yuv_rows_get(const Emotion_Engine_Instance *inst, int w, int h, unsigned char **yrows, unsigned char **urows, unsigned char **vrows); 55 Eina_Bool emotion_engine_instance_bgra_data_get(const Emotion_Engine_Instance *inst, unsigned char **bgra_data); 56 void emotion_engine_instance_event_feed(Emotion_Engine_Instance *inst, int event); 57 void emotion_engine_instance_event_mouse_button_feed(Emotion_Engine_Instance *inst, int button, int x, int y); 58 void emotion_engine_instance_event_mouse_move_feed(Emotion_Engine_Instance *inst, int x, int y); 59 int emotion_engine_instance_video_channel_count(Emotion_Engine_Instance *inst); 60 void emotion_engine_instance_video_channel_set(Emotion_Engine_Instance *inst, int channel); 61 int emotion_engine_instance_video_channel_get(const Emotion_Engine_Instance *inst); 62 void emotion_engine_instance_video_subtitle_file_set(Emotion_Engine_Instance *inst, const char *filepath); 63 const char * emotion_engine_instance_video_subtitle_file_get(const Emotion_Engine_Instance *inst); 64 const char * emotion_engine_instance_video_channel_name_get(const Emotion_Engine_Instance *inst, int channel); 65 void emotion_engine_instance_video_channel_mute_set(Emotion_Engine_Instance *inst, Eina_Bool mute); 66 Eina_Bool emotion_engine_instance_video_channel_mute_get(const Emotion_Engine_Instance *inst); 67 int emotion_engine_instance_audio_channel_count(Emotion_Engine_Instance *inst); 68 void emotion_engine_instance_audio_channel_set(Emotion_Engine_Instance *inst, int channel); 69 int emotion_engine_instance_audio_channel_get(const Emotion_Engine_Instance *inst); 70 const char * emotion_engine_instance_audio_channel_name_get(const Emotion_Engine_Instance *inst, int channel); 71 void emotion_engine_instance_audio_channel_mute_set(Emotion_Engine_Instance *inst, Eina_Bool mute); 72 Eina_Bool emotion_engine_instance_audio_channel_mute_get(const Emotion_Engine_Instance *inst); 73 void emotion_engine_instance_audio_channel_volume_set(Emotion_Engine_Instance *inst, double vol); 74 double emotion_engine_instance_audio_channel_volume_get(const Emotion_Engine_Instance *inst); 75 int emotion_engine_instance_spu_channel_count(Emotion_Engine_Instance *inst); 76 void emotion_engine_instance_spu_channel_set(Emotion_Engine_Instance *inst, int channel); 77 int emotion_engine_instance_spu_channel_get(const Emotion_Engine_Instance *inst); 78 const char * emotion_engine_instance_spu_channel_name_get(const Emotion_Engine_Instance *inst, int channel); 79 void emotion_engine_instance_spu_channel_mute_set(Emotion_Engine_Instance *inst, Eina_Bool mute); 80 Eina_Bool emotion_engine_instance_spu_channel_mute_get(const Emotion_Engine_Instance *inst); 81 int emotion_engine_instance_chapter_count(Emotion_Engine_Instance *inst); 82 void emotion_engine_instance_chapter_set(Emotion_Engine_Instance *inst, int chapter); 83 int emotion_engine_instance_chapter_get(const Emotion_Engine_Instance *inst); 84 const char * emotion_engine_instance_chapter_name_get(const Emotion_Engine_Instance *inst, int chapter); 85 void emotion_engine_instance_speed_set(Emotion_Engine_Instance *inst, double speed); 86 double emotion_engine_instance_speed_get(const Emotion_Engine_Instance *inst); 87 Eina_Bool emotion_engine_instance_eject(Emotion_Engine_Instance *inst); 88 const char * emotion_engine_instance_meta_get(const Emotion_Engine_Instance *inst, int meta); 89 void emotion_engine_instance_priority_set(Emotion_Engine_Instance *inst, Eina_Bool priority); 90 Eina_Bool emotion_engine_instance_priority_get(const Emotion_Engine_Instance *inst); 91 void * emotion_engine_instance_meta_artwork_get(const Emotion_Engine_Instance *inst, Evas_Object *img, const char *path, Emotion_Artwork_Info type); 92 #endif 93