summaryrefslogtreecommitdiff
path: root/src/lib/ecore_audio/ecore_audio.eo
blob: c22f12473d50cbd590e4b3d5317ac1d75febfe0b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
class Ecore_Audio (Eo.Base)
{
   legacy_prefix: null;
   eo_prefix: ecore_audio_obj;
   data: Ecore_Audio_Object;
   methods {
      @property name {
         set {
            /*@
            Set the name of the object
            
            @since 1.8 */
         }
         get {
            /*@
            Get the name of the object
            
            @since 1.8 */
         }
         values {
            name: const(char)*; 
         }
      }
      @property paused {
         set {
            /*@
            Set the pause state of the object
            
            @since 1.8 */
         }
         get {
            /*@
            Get the pause state of the object
            
            @since 1.8 */
         }
         values {
            paused: bool; /*@ ret EINA_TRUE if object is paused, EINA_FALSE if not*/
         }
      }
      @property volume {
         set {
            /*@
            Set the volume of the object
            
            @since 1.8 */
         }
         get {
            /*@
            Get the volume of the object
            
            @since 1.8 */
         }
         values {
            volume: double; /*@ The volume */
         }
      }
      @property source {
         set {
            /*@
            Set the source of the object
            
            What sources are supported depends on the actual object. For example,
            the libsndfile class accepts WAV, OGG, FLAC files as source.
            
            @since 1.8 */
            return: bool; /*@ EINA_TRUE if the source was set correctly (i.e. the file was opened), EINA_FALSE otherwise*/
         }
         get {
            /*@
            Get the source of the object
            
            @since 1.8 */
         }
         values {
            source: const(char)*; /*@ The source to set to (i.e. file, URL, device)*/
         }
      }
      @property format {
         set {
            /*@
            Set the format of the object
            
            What formats are supported depends on the actual object. Default is
            ECORE_AUDIO_FORMAT_AUTO
            
            @since 1.8 */
            return: bool; /*@ EINA_TRUE if the format was supported, EINA_FALSE otherwise*/
         }
         get {
            /*@
            Get the format of the object
            
            After setting the source if the format was ECORE_AUDIO_FORMAT_AUTO this
            function will now return the actual format.
            
            @since 1.8 */
         }
         values {
            format: Ecore_Audio_Format; /*@ The format of the object*/
         }
      }
      vio_set {
         /*@
         Set the virtual IO functions
         
         @since 1.8 */
         params {
              vio: Ecore_Audio_Vio *; /*@ The @ref Ecore_Audio_Vio struct with the function callbacks*/
              data: void *; /*@ User data to pass to the VIO functions*/
              free_func: eo_key_data_free_func; /*@ This function takes care to clean up @ref data when he VIO is destroyed. NULL means do nothing.*/
         }
      }
   }
   implements {
      Eo.Base.constructor;
      @virtual .source.get;
      @virtual .source.set;
      @virtual .format.get;
      @virtual .format.set;
      @virtual .vio_set;
   }
}