Mercurial > molko
annotate src/libmlk-core/core/music.h @ 341:0c18acf4517e
js: add music bindings
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sat, 16 Oct 2021 09:45:45 +0200 |
parents | 8f9937403749 |
children | 19782ea1cf4a |
rev | line source |
---|---|
203 | 1 /* |
2 * music.h -- music support | |
3 * | |
314 | 4 * Copyright (c) 2020-2021 David Demelier <markand@malikania.fr> |
203 | 5 * |
6 * Permission to use, copy, modify, and/or distribute this software for any | |
7 * purpose with or without fee is hereby granted, provided that the above | |
8 * copyright notice and this permission notice appear in all copies. | |
9 * | |
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES | |
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF | |
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR | |
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES | |
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN | |
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF | |
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | |
17 */ | |
18 | |
19 #ifndef MOLKO_CORE_MUSIC_H | |
20 #define MOLKO_CORE_MUSIC_H | |
21 | |
22 #include <stddef.h> | |
23 | |
292
08ab73b32832
misc: add extern "C" {} blocks for C++ friends
David Demelier <markand@malikania.fr>
parents:
253
diff
changeset
|
24 #include "core.h" |
08ab73b32832
misc: add extern "C" {} blocks for C++ friends
David Demelier <markand@malikania.fr>
parents:
253
diff
changeset
|
25 |
341
0c18acf4517e
js: add music bindings
David Demelier <markand@malikania.fr>
parents:
320
diff
changeset
|
26 struct vfs_file; |
0c18acf4517e
js: add music bindings
David Demelier <markand@malikania.fr>
parents:
320
diff
changeset
|
27 |
203 | 28 enum music_flags { |
253
c4da052c0def
core: goodbye doxygen
David Demelier <markand@malikania.fr>
parents:
243
diff
changeset
|
29 MUSIC_NONE = 0, |
c4da052c0def
core: goodbye doxygen
David Demelier <markand@malikania.fr>
parents:
243
diff
changeset
|
30 MUSIC_LOOP = (1 << 0) |
203 | 31 }; |
32 | |
33 struct music { | |
253
c4da052c0def
core: goodbye doxygen
David Demelier <markand@malikania.fr>
parents:
243
diff
changeset
|
34 void *handle; |
203 | 35 }; |
36 | |
292
08ab73b32832
misc: add extern "C" {} blocks for C++ friends
David Demelier <markand@malikania.fr>
parents:
253
diff
changeset
|
37 CORE_BEGIN_DECLS |
08ab73b32832
misc: add extern "C" {} blocks for C++ friends
David Demelier <markand@malikania.fr>
parents:
253
diff
changeset
|
38 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
39 int |
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
40 music_open(struct music *, const char *); |
203 | 41 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
42 int |
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
43 music_openmem(struct music *, const void *, size_t); |
203 | 44 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
45 int |
341
0c18acf4517e
js: add music bindings
David Demelier <markand@malikania.fr>
parents:
320
diff
changeset
|
46 music_openvfs(struct music *, struct vfs_file *); |
0c18acf4517e
js: add music bindings
David Demelier <markand@malikania.fr>
parents:
320
diff
changeset
|
47 |
0c18acf4517e
js: add music bindings
David Demelier <markand@malikania.fr>
parents:
320
diff
changeset
|
48 int |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
49 music_ok(const struct music *); |
203 | 50 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
51 int |
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
52 music_play(struct music *, enum music_flags, unsigned int); |
203 | 53 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
54 int |
203 | 55 music_playing(void); |
56 | |
57 void | |
58 music_pause(void); | |
59 | |
60 void | |
61 music_resume(void); | |
62 | |
63 void | |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
64 music_stop(unsigned int); |
203 | 65 |
66 void | |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
292
diff
changeset
|
67 music_finish(struct music *); |
203 | 68 |
292
08ab73b32832
misc: add extern "C" {} blocks for C++ friends
David Demelier <markand@malikania.fr>
parents:
253
diff
changeset
|
69 CORE_END_DECLS |
08ab73b32832
misc: add extern "C" {} blocks for C++ friends
David Demelier <markand@malikania.fr>
parents:
253
diff
changeset
|
70 |
203 | 71 #endif /* !MOLKO_CORE_MUSIC_H */ |