MTek-GDL 0.100.4-muffintrap
Loading...
Searching...
No Matches
mgdl-music.h
1#pragma once
2
3#include <mgdl/mgdl-sound.h>
4
5#ifndef GEKKO
6#include <mgdl/mgdl-openal.h>
7#endif
8
9enum MusicType
10{
11 MusicOgg,
12 MusicWav
13};
14typedef enum MusicType MusicType;
15
16struct Music
17{
18 // File information
19 char* filenameChar;
20 // Playback variables
21 bool isLooping;
22 float secondsOffset;
23
24 MusicType type;
25 Sound* wav;
26
27 #ifdef GEKKO
28 FILE* oggFile;
29 #else // PC platform
30 ALuint source;
31 #endif
32};
33typedef struct Music Music;
34
35#ifdef __cplusplus
36extern "C"
37{
38#endif
39
40Music* Music_Create(void);
41Music* Music_LoadOgg(const char* fileName);
42Music* Music_LoadWav(const char* fileName);
43
44void Music_DeleteData(Music* music);
45
60bool Music_Play(Music* music, bool loop);
61
65void Music_SetPaused(Music* music, bool paused);
66
67void Music_SetElapsedSeconds(Music* music, float seconds);
68float Music_GetElapsedSeconds(Music* music);
69
71void Music_Stop(Music* music);
72
73bool Music_GetLooping(Music* music);
74void Music_SetLooping(Music* music, bool looping);
75
76SoundStatus Music_GetStatus(Music* music);
77
78#ifdef __cplusplus
79}
80#endif
Sound module header.
Definition mgdl-music.h:17
Sound handling struct.
Definition mgdl-sound.h:31