summaryrefslogtreecommitdiff
path: root/src/lib/emotion/Emotion.h
diff options
context:
space:
mode:
authorFelipe Magno de Almeida <felipe@expertise.dev>2021-01-11 10:31:30 +0000
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2021-01-11 10:31:30 +0000
commitc118886043ffe2e4d95bcc0e0c2780c79237ca5c (patch)
treec30dd1da3047b7f1b54fc43b24643bfb113a5aec /src/lib/emotion/Emotion.h
parent0472f219790b822a3f41c12621a4001d7e5dfb86 (diff)
emotion: emotion EAPI macro to EMOTION_API in Emotion library
Summary: Patch from a series of patches to rename EAPI symbols to specific library DSOs. = The Rationale = EAPI was designed to be able to pass `__attribute__ ((visibility ("default")))` for symbols with GCC, which would mean that even if -fvisibility=hidden was used when compiling the library, the needed symbols would get exported. MSVC __almost__ works like GCC (or mingw) in which you can declare everything as export and it will just work (slower, but it will work). But there's a caveat: global variables will not work the same way for MSVC, but works for mingw and GCC. For global variables (as opposed to functions), MSVC requires correct DSO visibility for MSVC: instead of declaring a symbol as export for everything, you need to declare it as import when importing from another DSO and export when defining it locally. With current EAPI definitions, we get the following example working in mingw and MSVC (observe it doesn't define any global variables as exported symbols). Example 1: dll1: ``` EAPI void foo(void); EAPI void bar() { foo(); } ``` dll2: ``` EAPI void foo() { printf ("foo\n"); } ``` This works fine with API defined as __declspec(dllexport) in both cases and for gcc defining as `__atttribute__((visibility("default")))`. However, the following: Example 2: dll1: ``` EAPI extern int foo; EAPI void foobar(void); EAPI void bar() { foo = 5; foobar(); } ``` dll2: ``` EAPI int foo = 0; EAPI void foobar() { printf ("foo %d\n", foo); } ``` This will work on mingw but will not work for MSVC. And that's why EAPI is the only solution that worked for MSVC. Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com> Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev> Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com> Reviewers: vtorri, woohyun, jptiz, lucas Reviewed By: vtorri, lucas Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D12227
Diffstat (limited to 'src/lib/emotion/Emotion.h')
-rw-r--r--src/lib/emotion/Emotion.h193
1 files changed, 83 insertions, 110 deletions
diff --git a/src/lib/emotion/Emotion.h b/src/lib/emotion/Emotion.h
index 5f68c09fa7..b4495c12f2 100644
--- a/src/lib/emotion/Emotion.h
+++ b/src/lib/emotion/Emotion.h
@@ -93,31 +93,7 @@
93#include <Evas.h> 93#include <Evas.h>
94#include <Efl_Config.h> 94#include <Efl_Config.h>
95 95
96#ifdef EAPI 96#include <emotion_api.h>
97# undef EAPI
98#endif
99
100#ifdef _WIN32
101# ifdef EFL_BUILD
102# ifdef DLL_EXPORT
103# define EAPI __declspec(dllexport)
104# else
105# define EAPI
106# endif
107# else
108# define EAPI __declspec(dllimport)
109# endif
110#else
111# ifdef __GNUC__
112# if __GNUC__ >= 4
113# define EAPI __attribute__ ((visibility("default")))
114# else
115# define EAPI
116# endif
117# else
118# define EAPI
119# endif
120#endif
121 97
122#ifdef __cplusplus 98#ifdef __cplusplus
123extern "C" { 99extern "C" {
@@ -282,7 +258,7 @@ typedef struct _Emotion_Version
282 int revision; /** < git revision (0 if a proper release or the git revision number Emotion is built from) */ 258 int revision; /** < git revision (0 if a proper release or the git revision number Emotion is built from) */
283 } Emotion_Version; 259 } Emotion_Version;
284 260
285EAPI extern Emotion_Version *emotion_version; 261EMOTION_API extern Emotion_Version *emotion_version;
286 262
287/* api calls available */ 263/* api calls available */
288 264
@@ -371,14 +347,14 @@ EAPI extern Emotion_Version *emotion_version;
371 * Initialise needed libraries like eina ecore eet 347 * Initialise needed libraries like eina ecore eet
372 * Initialise needed modules like webcam 348 * Initialise needed modules like webcam
373 */ 349 */
374EAPI Eina_Bool emotion_init(void); 350EMOTION_API Eina_Bool emotion_init(void);
375 351
376/** 352/**
377 * @brief Shutdown Emotion library 353 * @brief Shutdown Emotion library
378 * 354 *
379 * Proper shutdown of all loaded modules and initialised libraries. 355 * Proper shutdown of all loaded modules and initialised libraries.
380 */ 356 */
381EAPI Eina_Bool emotion_shutdown(void); 357EMOTION_API Eina_Bool emotion_shutdown(void);
382 358
383/** 359/**
384 * @brief Add an emotion object to the canvas. 360 * @brief Add an emotion object to the canvas.
@@ -405,7 +381,7 @@ EAPI Eina_Bool emotion_shutdown(void);
405 * 381 *
406 * @ingroup Emotion_Init 382 * @ingroup Emotion_Init
407 */ 383 */
408EAPI Evas_Object *emotion_object_add (Evas *evas); 384EMOTION_API Evas_Object *emotion_object_add (Evas *evas);
409 385
410/** 386/**
411 * @brief Set borders for the emotion object. 387 * @brief Set borders for the emotion object.
@@ -435,7 +411,7 @@ EAPI Evas_Object *emotion_object_add (Evas *evas);
435 * 411 *
436 * @ingroup Emotion_Video 412 * @ingroup Emotion_Video
437 */ 413 */
438EAPI void emotion_object_border_set(Evas_Object *obj, int l, int r, int t, int b); 414EMOTION_API void emotion_object_border_set(Evas_Object *obj, int l, int r, int t, int b);
439 415
440/** 416/**
441 * @brief Get the borders set for the emotion object. 417 * @brief Get the borders set for the emotion object.
@@ -450,7 +426,7 @@ EAPI void emotion_object_border_set(Evas_Object *obj, int l, int r, int t, int b
450 * 426 *
451 * @ingroup Emotion_Video 427 * @ingroup Emotion_Video
452 */ 428 */
453EAPI void emotion_object_border_get(const Evas_Object *obj, int *l, int *r, int *t, int *b); 429EMOTION_API void emotion_object_border_get(const Evas_Object *obj, int *l, int *r, int *t, int *b);
454 430
455/** 431/**
456 * @brief Set a color for the background rectangle of this emotion object. 432 * @brief Set a color for the background rectangle of this emotion object.
@@ -471,7 +447,7 @@ EAPI void emotion_object_border_get(const Evas_Object *obj, int *l, int *r, int
471 * 447 *
472 * @ingroup Emotion_Video 448 * @ingroup Emotion_Video
473 */ 449 */
474EAPI void emotion_object_bg_color_set(Evas_Object *obj, int r, int g, int b, int a); 450EMOTION_API void emotion_object_bg_color_set(Evas_Object *obj, int r, int g, int b, int a);
475 451
476/** 452/**
477 * @brief Get the background color set for the emotion object. 453 * @brief Get the background color set for the emotion object.
@@ -486,7 +462,7 @@ EAPI void emotion_object_bg_color_set(Evas_Object *obj, int r, int g, int b, int
486 * 462 *
487 * @ingroup Emotion_Video 463 * @ingroup Emotion_Video
488 */ 464 */
489EAPI void emotion_object_bg_color_get(const Evas_Object *obj, int *r, int *g, int *b, int *a); 465EMOTION_API void emotion_object_bg_color_get(const Evas_Object *obj, int *r, int *g, int *b, int *a);
490 466
491/** 467/**
492 * @brief Set whether emotion should keep the aspect ratio of the video. 468 * @brief Set whether emotion should keep the aspect ratio of the video.
@@ -530,7 +506,7 @@ EAPI void emotion_object_bg_color_get(const Evas_Object *obj, int *r, int *g, in
530 * 506 *
531 * @ingroup Emotion_Video 507 * @ingroup Emotion_Video
532 */ 508 */
533EAPI void emotion_object_keep_aspect_set(Evas_Object *obj, Emotion_Aspect a); 509EMOTION_API void emotion_object_keep_aspect_set(Evas_Object *obj, Emotion_Aspect a);
534 510
535/** 511/**
536 * @brief Get the current emotion aspect ratio policy. 512 * @brief Get the current emotion aspect ratio policy.
@@ -543,7 +519,7 @@ EAPI void emotion_object_keep_aspect_set(Evas_Object *obj, Emotion_Aspect a);
543 * 519 *
544 * @ingroup Emotion_Video 520 * @ingroup Emotion_Video
545 */ 521 */
546EAPI Emotion_Aspect emotion_object_keep_aspect_get(const Evas_Object *obj); 522EMOTION_API Emotion_Aspect emotion_object_keep_aspect_get(const Evas_Object *obj);
547 523
548/** 524/**
549 * @brief Set the file to be played in the Emotion object. 525 * @brief Set the file to be played in the Emotion object.
@@ -574,7 +550,7 @@ EAPI Emotion_Aspect emotion_object_keep_aspect_get(const Evas_Object *obj);
574 * 550 *
575 * @ingroup Emotion_Init 551 * @ingroup Emotion_Init
576 */ 552 */
577EAPI Eina_Bool emotion_object_file_set (Evas_Object *obj, const char *filename); 553EMOTION_API Eina_Bool emotion_object_file_set (Evas_Object *obj, const char *filename);
578 554
579/** 555/**
580 * @brief Get the filename of the file associated with the emotion object. 556 * @brief Get the filename of the file associated with the emotion object.
@@ -592,7 +568,7 @@ EAPI Eina_Bool emotion_object_file_set (Evas_Object *obj, const
592 * 568 *
593 * @ingroup Emotion_Init 569 * @ingroup Emotion_Init
594 */ 570 */
595EAPI const char *emotion_object_file_get (const Evas_Object *obj); 571EMOTION_API const char *emotion_object_file_get (const Evas_Object *obj);
596/** 572/**
597 * @defgroup Emotion_Play Play control functions 573 * @defgroup Emotion_Play Play control functions
598 * @ingroup Emotion 574 * @ingroup Emotion
@@ -609,14 +585,14 @@ EAPI const char *emotion_object_file_get (const Evas_Object *obj);
609 * This functions sets the currently playing status of the video. Using this 585 * This functions sets the currently playing status of the video. Using this
610 * function to play or pause the video doesn't alter it's current position. 586 * function to play or pause the video doesn't alter it's current position.
611 */ 587 */
612EAPI void emotion_object_play_set (Evas_Object *obj, Eina_Bool play); 588EMOTION_API void emotion_object_play_set (Evas_Object *obj, Eina_Bool play);
613/** 589/**
614 * @brief Get play/pause state of the media file. 590 * @brief Get play/pause state of the media file.
615 * 591 *
616 * @param obj The emotion object from which the state will be retrieved. 592 * @param obj The emotion object from which the state will be retrieved.
617 * @return EINA_TRUE if playing. EINA_FALSE if not playing. 593 * @return EINA_TRUE if playing. EINA_FALSE if not playing.
618 */ 594 */
619EAPI Eina_Bool emotion_object_play_get (const Evas_Object *obj); 595EMOTION_API Eina_Bool emotion_object_play_get (const Evas_Object *obj);
620/** 596/**
621 * @brief Set the position in the media file. 597 * @brief Set the position in the media file.
622 * 598 *
@@ -629,7 +605,7 @@ EAPI Eina_Bool emotion_object_play_get (const Evas_Object *obj);
629 * 605 *
630 * @see emotion_object_seekable_get 606 * @see emotion_object_seekable_get
631 */ 607 */
632EAPI void emotion_object_position_set (Evas_Object *obj, double sec); 608EMOTION_API void emotion_object_position_set (Evas_Object *obj, double sec);
633/** 609/**
634 * @brief Get the position in the media file. 610 * @brief Get the position in the media file.
635 * 611 *
@@ -639,7 +615,7 @@ EAPI void emotion_object_position_set (Evas_Object *obj, double
639 * The position is returned as the number of seconds since the beginning of the 615 * The position is returned as the number of seconds since the beginning of the
640 * media file. 616 * media file.
641 */ 617 */
642EAPI double emotion_object_position_get (const Evas_Object *obj); 618EMOTION_API double emotion_object_position_get (const Evas_Object *obj);
643 619
644/** 620/**
645 * @brief Get the percentual size of the buffering cache. 621 * @brief Get the percentual size of the buffering cache.
@@ -655,7 +631,7 @@ EAPI double emotion_object_position_get (const Evas_Object *obj);
655 * 631 *
656 * @warning Generic backend don't implement this (will return 1.0). 632 * @warning Generic backend don't implement this (will return 1.0).
657 */ 633 */
658EAPI double emotion_object_buffer_size_get (const Evas_Object *obj); 634EMOTION_API double emotion_object_buffer_size_get (const Evas_Object *obj);
659 635
660/** 636/**
661 * @brief Get whether the media file is seekable. 637 * @brief Get whether the media file is seekable.
@@ -664,7 +640,7 @@ EAPI double emotion_object_buffer_size_get (const Evas_Object *obj);
664 * retrieved. 640 * retrieved.
665 * @return EINA_TRUE if the media file is seekable, EINA_FALSE otherwise. 641 * @return EINA_TRUE if the media file is seekable, EINA_FALSE otherwise.
666 */ 642 */
667EAPI Eina_Bool emotion_object_seekable_get (const Evas_Object *obj); 643EMOTION_API Eina_Bool emotion_object_seekable_get (const Evas_Object *obj);
668/** 644/**
669 * @brief Get the length of play for the media file. 645 * @brief Get the length of play for the media file.
670 * 646 *
@@ -676,7 +652,7 @@ EAPI Eina_Bool emotion_object_seekable_get (const Evas_Object *obj);
676 * @warning This will return 0 if called before the "length_change" signal has, 652 * @warning This will return 0 if called before the "length_change" signal has,
677 * been emitted. 653 * been emitted.
678 */ 654 */
679EAPI double emotion_object_play_length_get (const Evas_Object *obj); 655EMOTION_API double emotion_object_play_length_get (const Evas_Object *obj);
680 656
681/** 657/**
682 * @brief Set the play speed of the media file. 658 * @brief Set the play speed of the media file.
@@ -690,7 +666,7 @@ EAPI double emotion_object_play_length_get (const Evas_Object *obj);
690 * @warning The only backend that implements this is the experimental VLC 666 * @warning The only backend that implements this is the experimental VLC
691 * backend. 667 * backend.
692 */ 668 */
693EAPI void emotion_object_play_speed_set (Evas_Object *obj, double speed); 669EMOTION_API void emotion_object_play_speed_set (Evas_Object *obj, double speed);
694/** 670/**
695 * @brief Get the play speed of the media file. 671 * @brief Get the play speed of the media file.
696 * 672 *
@@ -699,7 +675,7 @@ EAPI void emotion_object_play_speed_set (Evas_Object *obj, double
699 * 675 *
700 * @see emotion_object_play_speed_set 676 * @see emotion_object_play_speed_set
701 */ 677 */
702EAPI double emotion_object_play_speed_get (const Evas_Object *obj); 678EMOTION_API double emotion_object_play_speed_get (const Evas_Object *obj);
703/** 679/**
704 * @brief Get how much of the file has been played. 680 * @brief Get how much of the file has been played.
705 * 681 *
@@ -709,7 +685,7 @@ EAPI double emotion_object_play_speed_get (const Evas_Object *obj);
709 * @warning Don't change of free the returned string. 685 * @warning Don't change of free the returned string.
710 * @warning gstreamer xine backends don't implement this(will return NULL). 686 * @warning gstreamer xine backends don't implement this(will return NULL).
711 */ 687 */
712EAPI const char *emotion_object_progress_info_get (const Evas_Object *obj); 688EMOTION_API const char *emotion_object_progress_info_get (const Evas_Object *obj);
713/** 689/**
714 * @brief Get how much of the file has been played. 690 * @brief Get how much of the file has been played.
715 * 691 *
@@ -721,12 +697,12 @@ EAPI const char *emotion_object_progress_info_get (const Evas_Object *obj);
721 * 697 *
722 * @warning gstreamer xine backends don't implement this(will return 0). 698 * @warning gstreamer xine backends don't implement this(will return 0).
723 */ 699 */
724EAPI double emotion_object_progress_status_get (const Evas_Object *obj); 700EMOTION_API double emotion_object_progress_status_get (const Evas_Object *obj);
725/** 701/**
726 * @} 702 * @}
727 */ 703 */
728EAPI Eina_Bool emotion_object_video_handled_get (const Evas_Object *obj); 704EMOTION_API Eina_Bool emotion_object_video_handled_get (const Evas_Object *obj);
729EAPI Eina_Bool emotion_object_audio_handled_get (const Evas_Object *obj); 705EMOTION_API Eina_Bool emotion_object_audio_handled_get (const Evas_Object *obj);
730 706
731/** 707/**
732 * @brief Retrieve the video aspect ratio of the media file loaded. 708 * @brief Retrieve the video aspect ratio of the media file loaded.
@@ -809,7 +785,7 @@ EAPI Eina_Bool emotion_object_audio_handled_get (const Evas_Object *obj);
809 * 785 *
810 * @ingroup Emotion_Video 786 * @ingroup Emotion_Video
811 */ 787 */
812EAPI double emotion_object_ratio_get (const Evas_Object *obj); 788EMOTION_API double emotion_object_ratio_get (const Evas_Object *obj);
813 789
814/** 790/**
815 * @brief Retrieve the video size of the loaded file. 791 * @brief Retrieve the video size of the loaded file.
@@ -833,7 +809,7 @@ EAPI double emotion_object_ratio_get (const Evas_Object *obj);
833 * 809 *
834 * @ingroup Emotion_Video 810 * @ingroup Emotion_Video
835 */ 811 */
836EAPI void emotion_object_size_get (const Evas_Object *obj, int *iw, int *ih); 812EMOTION_API void emotion_object_size_get (const Evas_Object *obj, int *iw, int *ih);
837 813
838/** 814/**
839 * @brief Sets whether to use of high-quality image scaling algorithm 815 * @brief Sets whether to use of high-quality image scaling algorithm
@@ -850,7 +826,7 @@ EAPI void emotion_object_size_get (const Evas_Object *obj,
850 * 826 *
851 * @ingroup Emotion_Video 827 * @ingroup Emotion_Video
852 */ 828 */
853EAPI void emotion_object_smooth_scale_set (Evas_Object *obj, Eina_Bool smooth); 829EMOTION_API void emotion_object_smooth_scale_set (Evas_Object *obj, Eina_Bool smooth);
854 830
855/** 831/**
856 * @brief Gets whether the high-quality image scaling algorithm 832 * @brief Gets whether the high-quality image scaling algorithm
@@ -863,7 +839,7 @@ EAPI void emotion_object_smooth_scale_set (Evas_Object *obj, Eina_B
863 * 839 *
864 * @ingroup Emotion_Video 840 * @ingroup Emotion_Video
865 */ 841 */
866EAPI Eina_Bool emotion_object_smooth_scale_get (const Evas_Object *obj); 842EMOTION_API Eina_Bool emotion_object_smooth_scale_get (const Evas_Object *obj);
867 843
868/** 844/**
869 * @brief Send an Emotion Event to an Evas object 845 * @brief Send an Emotion Event to an Evas object
@@ -873,7 +849,7 @@ EAPI Eina_Bool emotion_object_smooth_scale_get (const Evas_Object *obj);
873 * 849 *
874 * @see Emotion_Event 850 * @see Emotion_Event
875 */ 851 */
876EAPI void emotion_object_event_simple_send (Evas_Object *obj, Emotion_Event ev); 852EMOTION_API void emotion_object_event_simple_send (Evas_Object *obj, Emotion_Event ev);
877 853
878/** 854/**
879 * @brief Set the audio volume. 855 * @brief Set the audio volume.
@@ -893,7 +869,7 @@ EAPI void emotion_object_event_simple_send (Evas_Object *obj, Emotio
893 * 869 *
894 * @ingroup Emotion_Audio 870 * @ingroup Emotion_Audio
895 */ 871 */
896EAPI void emotion_object_audio_volume_set (Evas_Object *obj, double vol); 872EMOTION_API void emotion_object_audio_volume_set (Evas_Object *obj, double vol);
897 873
898/** 874/**
899 * @brief Get the audio volume. 875 * @brief Get the audio volume.
@@ -908,7 +884,7 @@ EAPI void emotion_object_audio_volume_set (Evas_Object *obj, double
908 * 884 *
909 * @ingroup Emotion_Audio 885 * @ingroup Emotion_Audio
910 */ 886 */
911EAPI double emotion_object_audio_volume_get (const Evas_Object *obj); 887EMOTION_API double emotion_object_audio_volume_get (const Evas_Object *obj);
912 888
913/** 889/**
914 * @brief Set the mute audio option for this object. 890 * @brief Set the mute audio option for this object.
@@ -926,7 +902,7 @@ EAPI double emotion_object_audio_volume_get (const Evas_Object *obj);
926 * 902 *
927 * @ingroup Emotion_Audio 903 * @ingroup Emotion_Audio
928 */ 904 */
929EAPI void emotion_object_audio_mute_set (Evas_Object *obj, Eina_Bool mute); 905EMOTION_API void emotion_object_audio_mute_set (Evas_Object *obj, Eina_Bool mute);
930 906
931/** 907/**
932 * @brief Get the mute audio option of this object. 908 * @brief Get the mute audio option of this object.
@@ -941,11 +917,11 @@ EAPI void emotion_object_audio_mute_set (Evas_Object *obj, Eina_B
941 * 917 *
942 * @ingroup Emotion_Audio 918 * @ingroup Emotion_Audio
943 */ 919 */
944EAPI Eina_Bool emotion_object_audio_mute_get (const Evas_Object *obj); 920EMOTION_API Eina_Bool emotion_object_audio_mute_get (const Evas_Object *obj);
945EAPI int emotion_object_audio_channel_count (const Evas_Object *obj); 921EMOTION_API int emotion_object_audio_channel_count (const Evas_Object *obj);
946EAPI const char *emotion_object_audio_channel_name_get(const Evas_Object *obj, int channel); 922EMOTION_API const char *emotion_object_audio_channel_name_get(const Evas_Object *obj, int channel);
947EAPI void emotion_object_audio_channel_set (Evas_Object *obj, int channel); 923EMOTION_API void emotion_object_audio_channel_set (Evas_Object *obj, int channel);
948EAPI int emotion_object_audio_channel_get (const Evas_Object *obj); 924EMOTION_API int emotion_object_audio_channel_get (const Evas_Object *obj);
949 925
950/** 926/**
951 * @brief Set the mute video option for this object. 927 * @brief Set the mute video option for this object.
@@ -963,7 +939,7 @@ EAPI int emotion_object_audio_channel_get (const Evas_Object *obj);
963 * 939 *
964 * @ingroup Emotion_Video 940 * @ingroup Emotion_Video
965 */ 941 */
966EAPI void emotion_object_video_mute_set (Evas_Object *obj, Eina_Bool mute); 942EMOTION_API void emotion_object_video_mute_set (Evas_Object *obj, Eina_Bool mute);
967 943
968/** 944/**
969 * @brief Get the mute video option of this object. 945 * @brief Get the mute video option of this object.
@@ -978,7 +954,7 @@ EAPI void emotion_object_video_mute_set (Evas_Object *obj, Eina_B
978 * 954 *
979 * @ingroup Emotion_Video 955 * @ingroup Emotion_Video
980 */ 956 */
981EAPI Eina_Bool emotion_object_video_mute_get (const Evas_Object *obj); 957EMOTION_API Eina_Bool emotion_object_video_mute_get (const Evas_Object *obj);
982 958
983/** 959/**
984 * @brief Set the video's subtitle file path. 960 * @brief Set the video's subtitle file path.
@@ -994,7 +970,7 @@ EAPI Eina_Bool emotion_object_video_mute_get (const Evas_Object *obj);
994 * @ingroup Emotion_Video 970 * @ingroup Emotion_Video
995 * @since 1.8 971 * @since 1.8
996 */ 972 */
997EAPI void emotion_object_video_subtitle_file_set (Evas_Object *obj, const char *filepath); 973EMOTION_API void emotion_object_video_subtitle_file_set (Evas_Object *obj, const char *filepath);
998 974
999/** 975/**
1000 * @brief Get the video's subtitle file path. 976 * @brief Get the video's subtitle file path.
@@ -1010,7 +986,7 @@ EAPI void emotion_object_video_subtitle_file_set (Evas_Object *obj, cons
1010 * @ingroup Emotion_Video 986 * @ingroup Emotion_Video
1011 * @since 1.8 987 * @since 1.8
1012 */ 988 */
1013EAPI const char *emotion_object_video_subtitle_file_get (const Evas_Object *obj); 989EMOTION_API const char *emotion_object_video_subtitle_file_get (const Evas_Object *obj);
1014 990
1015/** 991/**
1016 * @brief Get the number of available video channel 992 * @brief Get the number of available video channel
@@ -1022,7 +998,7 @@ EAPI const char *emotion_object_video_subtitle_file_get (const Evas_Object *ob
1022 * 998 *
1023 * @ingroup Emotion_Video 999 * @ingroup Emotion_Video
1024 */ 1000 */
1025EAPI int emotion_object_video_channel_count (const Evas_Object *obj); 1001EMOTION_API int emotion_object_video_channel_count (const Evas_Object *obj);
1026 1002
1027/** 1003/**
1028 * @brief Get the name of a given video channel 1004 * @brief Get the name of a given video channel
@@ -1035,7 +1011,7 @@ EAPI int emotion_object_video_channel_count (const Evas_Object *obj);
1035 * 1011 *
1036 * @ingroup Emotion_Video 1012 * @ingroup Emotion_Video
1037 */ 1013 */
1038EAPI const char *emotion_object_video_channel_name_get(const Evas_Object *obj, int channel); 1014EMOTION_API const char *emotion_object_video_channel_name_get(const Evas_Object *obj, int channel);
1039 1015
1040/** 1016/**
1041 * @brief Set the channel for a given video object 1017 * @brief Set the channel for a given video object
@@ -1045,7 +1021,7 @@ EAPI const char *emotion_object_video_channel_name_get(const Evas_Object *obj,
1045 * 1021 *
1046 * @ingroup Emotion_Video 1022 * @ingroup Emotion_Video
1047 */ 1023 */
1048EAPI void emotion_object_video_channel_set (Evas_Object *obj, int channel); 1024EMOTION_API void emotion_object_video_channel_set (Evas_Object *obj, int channel);
1049 1025
1050/** 1026/**
1051 * @brief Get the channel for a given video object 1027 * @brief Get the channel for a given video object
@@ -1055,18 +1031,18 @@ EAPI void emotion_object_video_channel_set (Evas_Object *obj, int ch
1055 * 1031 *
1056 * @ingroup Emotion_Video 1032 * @ingroup Emotion_Video
1057 */ 1033 */
1058EAPI int emotion_object_video_channel_get (const Evas_Object *obj); 1034EMOTION_API int emotion_object_video_channel_get (const Evas_Object *obj);
1059EAPI void emotion_object_spu_mute_set (Evas_Object *obj, Eina_Bool mute); 1035EMOTION_API void emotion_object_spu_mute_set (Evas_Object *obj, Eina_Bool mute);
1060EAPI Eina_Bool emotion_object_spu_mute_get (const Evas_Object *obj); 1036EMOTION_API Eina_Bool emotion_object_spu_mute_get (const Evas_Object *obj);
1061EAPI int emotion_object_spu_channel_count (const Evas_Object *obj); 1037EMOTION_API int emotion_object_spu_channel_count (const Evas_Object *obj);
1062EAPI const char *emotion_object_spu_channel_name_get (const Evas_Object *obj, int channel); 1038EMOTION_API const char *emotion_object_spu_channel_name_get (const Evas_Object *obj, int channel);
1063EAPI void emotion_object_spu_channel_set (Evas_Object *obj, int channel); 1039EMOTION_API void emotion_object_spu_channel_set (Evas_Object *obj, int channel);
1064EAPI int emotion_object_spu_channel_get (const Evas_Object *obj); 1040EMOTION_API int emotion_object_spu_channel_get (const Evas_Object *obj);
1065EAPI int emotion_object_chapter_count (const Evas_Object *obj); 1041EMOTION_API int emotion_object_chapter_count (const Evas_Object *obj);
1066EAPI void emotion_object_chapter_set (Evas_Object *obj, int chapter); 1042EMOTION_API void emotion_object_chapter_set (Evas_Object *obj, int chapter);
1067EAPI int emotion_object_chapter_get (const Evas_Object *obj); 1043EMOTION_API int emotion_object_chapter_get (const Evas_Object *obj);
1068EAPI const char *emotion_object_chapter_name_get (const Evas_Object *obj, int chapter); 1044EMOTION_API const char *emotion_object_chapter_name_get (const Evas_Object *obj, int chapter);
1069EAPI void emotion_object_eject (Evas_Object *obj); 1045EMOTION_API void emotion_object_eject (Evas_Object *obj);
1070 1046
1071/** 1047/**
1072 * @brief Get the dvd title from this emotion object. 1048 * @brief Get the dvd title from this emotion object.
@@ -1080,11 +1056,11 @@ EAPI void emotion_object_eject (Evas_Object *obj);
1080 * 1056 *
1081 * @ingroup Emotion_Info 1057 * @ingroup Emotion_Info
1082 */ 1058 */
1083EAPI const char *emotion_object_title_get (const Evas_Object *obj); 1059EMOTION_API const char *emotion_object_title_get (const Evas_Object *obj);
1084EAPI const char *emotion_object_ref_file_get (const Evas_Object *obj); 1060EMOTION_API const char *emotion_object_ref_file_get (const Evas_Object *obj);
1085EAPI int emotion_object_ref_num_get (const Evas_Object *obj); 1061EMOTION_API int emotion_object_ref_num_get (const Evas_Object *obj);
1086EAPI int emotion_object_spu_button_count_get (const Evas_Object *obj); 1062EMOTION_API int emotion_object_spu_button_count_get (const Evas_Object *obj);
1087EAPI int emotion_object_spu_button_get (const Evas_Object *obj); 1063EMOTION_API int emotion_object_spu_button_get (const Evas_Object *obj);
1088 1064
1089/** 1065/**
1090 * @brief Retrieve meta information from this file being played. 1066 * @brief Retrieve meta information from this file being played.
@@ -1106,7 +1082,7 @@ EAPI int emotion_object_spu_button_get (const Evas_Object *obj);
1106 * 1082 *
1107 * @ingroup Emotion_Info 1083 * @ingroup Emotion_Info
1108 */ 1084 */
1109EAPI const char *emotion_object_meta_info_get (const Evas_Object *obj, Emotion_Meta_Info meta); 1085EMOTION_API const char *emotion_object_meta_info_get (const Evas_Object *obj, Emotion_Meta_Info meta);
1110 1086
1111/** 1087/**
1112 * @brief Set the visualization to be used with this object. 1088 * @brief Set the visualization to be used with this object.
@@ -1125,7 +1101,7 @@ EAPI const char *emotion_object_meta_info_get (const Evas_Object *obj,
1125 * 1101 *
1126 * @ingroup Emotion_Visualization 1102 * @ingroup Emotion_Visualization
1127 */ 1103 */
1128EAPI void emotion_object_vis_set (Evas_Object *obj, Emotion_Vis visualization); 1104EMOTION_API void emotion_object_vis_set (Evas_Object *obj, Emotion_Vis visualization);
1129 1105
1130/** 1106/**
1131 * @brief Get the type of visualization in use by this emotion object. 1107 * @brief Get the type of visualization in use by this emotion object.
@@ -1142,7 +1118,7 @@ EAPI void emotion_object_vis_set (Evas_Object *obj, Emotio
1142 * 1118 *
1143 * @ingroup Emotion_Visualization 1119 * @ingroup Emotion_Visualization
1144 */ 1120 */
1145EAPI Emotion_Vis emotion_object_vis_get (const Evas_Object *obj); 1121EMOTION_API Emotion_Vis emotion_object_vis_get (const Evas_Object *obj);
1146 1122
1147/** 1123/**
1148 * @brief Query whether a type of visualization is supported by this object. 1124 * @brief Query whether a type of visualization is supported by this object.
@@ -1160,7 +1136,7 @@ EAPI Emotion_Vis emotion_object_vis_get (const Evas_Object *obj);
1160 * 1136 *
1161 * @ingroup Emotion_Visualization 1137 * @ingroup Emotion_Visualization
1162 */ 1138 */
1163EAPI Eina_Bool emotion_object_vis_supported (const Evas_Object *obj, Emotion_Vis visualization); 1139EMOTION_API Eina_Bool emotion_object_vis_supported (const Evas_Object *obj, Emotion_Vis visualization);
1164 1140
1165/** 1141/**
1166 * @brief Raise priority of an object so it will have a priviledged access to hardware resources. 1142 * @brief Raise priority of an object so it will have a priviledged access to hardware resources.
@@ -1180,7 +1156,7 @@ EAPI Eina_Bool emotion_object_vis_supported (const Evas_Object *obj,
1180 * 1156 *
1181 * @ingroup Emotion_Ressource 1157 * @ingroup Emotion_Ressource
1182 */ 1158 */
1183EAPI void emotion_object_priority_set(Evas_Object *obj, Eina_Bool priority); 1159EMOTION_API void emotion_object_priority_set(Evas_Object *obj, Eina_Bool priority);
1184 1160
1185/** 1161/**
1186 * @brief Get the actual priority of an object. 1162 * @brief Get the actual priority of an object.
@@ -1195,7 +1171,7 @@ EAPI void emotion_object_priority_set(Evas_Object *obj, Eina_Bool priori
1195 * 1171 *
1196 * @ingroup Emotion_Ressource 1172 * @ingroup Emotion_Ressource
1197 */ 1173 */
1198EAPI Eina_Bool emotion_object_priority_get(const Evas_Object *obj); 1174EMOTION_API Eina_Bool emotion_object_priority_get(const Evas_Object *obj);
1199 1175
1200/** 1176/**
1201 * @brief Change the state of an object pipeline. 1177 * @brief Change the state of an object pipeline.
@@ -1212,7 +1188,7 @@ EAPI Eina_Bool emotion_object_priority_get(const Evas_Object *obj);
1212 * 1188 *
1213 * @ingroup Emotion_Ressource 1189 * @ingroup Emotion_Ressource
1214 */ 1190 */
1215EAPI void emotion_object_suspend_set(Evas_Object *obj, Emotion_Suspend state); 1191EMOTION_API void emotion_object_suspend_set(Evas_Object *obj, Emotion_Suspend state);
1216 1192
1217/** 1193/**
1218 * @brief Get the current state of the pipeline 1194 * @brief Get the current state of the pipeline
@@ -1225,7 +1201,7 @@ EAPI void emotion_object_suspend_set(Evas_Object *obj, Emotion_Suspend s
1225 * 1201 *
1226 * @ingroup Emotion_Ressource 1202 * @ingroup Emotion_Ressource
1227 */ 1203 */
1228EAPI Emotion_Suspend emotion_object_suspend_get(Evas_Object *obj); 1204EMOTION_API Emotion_Suspend emotion_object_suspend_get(Evas_Object *obj);
1229 1205
1230/** 1206/**
1231 * @brief Load the last known position if available 1207 * @brief Load the last known position if available
@@ -1241,7 +1217,7 @@ EAPI Emotion_Suspend emotion_object_suspend_get(Evas_Object *obj);
1241 * 1217 *
1242 * @ingroup Emotion_Info 1218 * @ingroup Emotion_Info
1243 */ 1219 */
1244EAPI void emotion_object_last_position_load(Evas_Object *obj); 1220EMOTION_API void emotion_object_last_position_load(Evas_Object *obj);
1245 1221
1246/** 1222/**
1247 * @brief Save the lastest position if possible 1223 * @brief Save the lastest position if possible
@@ -1257,7 +1233,7 @@ EAPI void emotion_object_last_position_load(Evas_Object *obj);
1257 * 1233 *
1258 * @ingroup Emotion_Info 1234 * @ingroup Emotion_Info
1259 */ 1235 */
1260EAPI void emotion_object_last_position_save(Evas_Object *obj); 1236EMOTION_API void emotion_object_last_position_save(Evas_Object *obj);
1261 1237
1262/** 1238/**
1263 * @brief Do we have a chance to play that file 1239 * @brief Do we have a chance to play that file
@@ -1269,7 +1245,7 @@ EAPI void emotion_object_last_position_save(Evas_Object *obj);
1269 * 1245 *
1270 * @see emotion_object_extension_may_play_get() 1246 * @see emotion_object_extension_may_play_get()
1271 */ 1247 */
1272EAPI Eina_Bool emotion_object_extension_may_play_fast_get(const char *file); 1248EMOTION_API Eina_Bool emotion_object_extension_may_play_fast_get(const char *file);
1273 1249
1274/** 1250/**
1275 * @brief Do we have a chance to play that file 1251 * @brief Do we have a chance to play that file
@@ -1281,7 +1257,7 @@ EAPI Eina_Bool emotion_object_extension_may_play_fast_get(const char *file);
1281 * 1257 *
1282 * @see emotion_object_extension_may_play_fast_get() 1258 * @see emotion_object_extension_may_play_fast_get()
1283 */ 1259 */
1284EAPI Eina_Bool emotion_object_extension_may_play_get(const char *file); 1260EMOTION_API Eina_Bool emotion_object_extension_may_play_get(const char *file);
1285 1261
1286/** 1262/**
1287 * @brief Get the actual image object that contains the pixels of the video stream 1263 * @brief Get the actual image object that contains the pixels of the video stream
@@ -1292,7 +1268,7 @@ EAPI Eina_Bool emotion_object_extension_may_play_get(const char *file);
1292 * 1268 *
1293 * @see emotion_object_image_get() 1269 * @see emotion_object_image_get()
1294 */ 1270 */
1295EAPI Evas_Object *emotion_object_image_get(const Evas_Object *obj); 1271EMOTION_API Evas_Object *emotion_object_image_get(const Evas_Object *obj);
1296 1272
1297/** 1273/**
1298 * @defgroup Emotion_Webcam API available for accessing webcam 1274 * @defgroup Emotion_Webcam API available for accessing webcam
@@ -1301,9 +1277,9 @@ EAPI Evas_Object *emotion_object_image_get(const Evas_Object *obj);
1301 1277
1302typedef struct _Emotion_Webcam Emotion_Webcam; /**< Webcam description */ 1278typedef struct _Emotion_Webcam Emotion_Webcam; /**< Webcam description */
1303 1279
1304EAPI extern int EMOTION_WEBCAM_UPDATE; /**< Ecore_Event triggered when a new webcam is plugged or unplugged */ 1280EMOTION_API extern int EMOTION_WEBCAM_UPDATE; /**< Ecore_Event triggered when a new webcam is plugged or unplugged */
1305EAPI extern int EMOTION_WEBCAM_ADD; /**< Ecore_Event triggered when a new webcam is plugged in @since 1.8*/ 1281EMOTION_API extern int EMOTION_WEBCAM_ADD; /**< Ecore_Event triggered when a new webcam is plugged in @since 1.8*/
1306EAPI extern int EMOTION_WEBCAM_DEL; /**< Ecore_Event triggered when a webcam is unplugged @since 1.8 */ 1282EMOTION_API extern int EMOTION_WEBCAM_DEL; /**< Ecore_Event triggered when a webcam is unplugged @since 1.8 */
1307 1283
1308/** 1284/**
1309 * @brief Get a list of active and available webcam 1285 * @brief Get a list of active and available webcam
@@ -1315,7 +1291,7 @@ EAPI extern int EMOTION_WEBCAM_DEL; /**< Ecore_Event triggered when a webcam is
1315 * 1291 *
1316 * @ingroup Emotion_Webcam 1292 * @ingroup Emotion_Webcam
1317 */ 1293 */
1318EAPI const Eina_List *emotion_webcams_get(void); 1294EMOTION_API const Eina_List *emotion_webcams_get(void);
1319 1295
1320/** 1296/**
1321 * @brief Get the human understandable name of a Webcam 1297 * @brief Get the human understandable name of a Webcam
@@ -1325,7 +1301,7 @@ EAPI const Eina_List *emotion_webcams_get(void);
1325 * 1301 *
1326 * @ingroup Emotion_Webcam 1302 * @ingroup Emotion_Webcam
1327 */ 1303 */
1328EAPI const char *emotion_webcam_name_get(const Emotion_Webcam *ew); 1304EMOTION_API const char *emotion_webcam_name_get(const Emotion_Webcam *ew);
1329 1305
1330/** 1306/**
1331 * @brief Get the uri of a Webcam that will be understood by emotion 1307 * @brief Get the uri of a Webcam that will be understood by emotion
@@ -1335,7 +1311,7 @@ EAPI const char *emotion_webcam_name_get(const Emotion_Webcam *ew);
1335 * 1311 *
1336 * @ingroup Emotion_Webcam 1312 * @ingroup Emotion_Webcam
1337 */ 1313 */
1338EAPI const char *emotion_webcam_device_get(const Emotion_Webcam *ew); 1314EMOTION_API const char *emotion_webcam_device_get(const Emotion_Webcam *ew);
1339 1315
1340/** 1316/**
1341 * @brief Get the album artwork from file meta data tags. 1317 * @brief Get the album artwork from file meta data tags.
@@ -1349,7 +1325,7 @@ EAPI const char *emotion_webcam_device_get(const Emotion_Webcam *ew);
1349 * @since 1.19 1325 * @since 1.19
1350 */ 1326 */
1351 1327
1352EAPI Evas_Object *emotion_file_meta_artwork_get(const Evas_Object *obj, const char *path, Emotion_Artwork_Info type); 1328EMOTION_API Evas_Object *emotion_file_meta_artwork_get(const Evas_Object *obj, const char *path, Emotion_Artwork_Info type);
1353/** 1329/**
1354 * @} 1330 * @}
1355 */ 1331 */
@@ -1358,7 +1334,4 @@ EAPI Evas_Object *emotion_file_meta_artwork_get(const Evas_Object *obj, cons
1358} 1334}
1359#endif 1335#endif
1360 1336
1361#undef EAPI
1362#define EAPI
1363
1364#endif 1337#endif