]> git.draconx.ca Git - upkg.git/blob - src/music.h
Initial UObject implementation plus a dumb music extractor.
[upkg.git] / src / music.h
1 #ifndef MUSIC_H_
2 #define MUSIC_H_
3
4 #include <glib-object.h>
5
6 #define U_MUSIC_TYPE (u_music_get_type())
7 #define U_MUSIC(obj) \
8         G_TYPE_CHECK_INSTANCE_CAST(obj, U_MUSIC_TYPE, UMusic)
9 #define U_MUSIC_CLASS(class) \
10         G_TYPE_CHECK_CLASS_CAST(class, U_MUSIC_TYPE, UMusicClass)
11 #define IS_U_MUSIC(obj) \
12         G_TYPE_CHECK_INSTANCE_TYPE(obj, U_MUSIC_TYPE)
13 #define IS_U_MUSIC_CLASS(class) \
14         G_TYPE_CHECK_CLASS_TYPE(class, U_MUSIC_TYPE, UMusicClass)
15
16 typedef struct UMusic      UMusic;
17 typedef struct UMusicClass UMusicClass;
18
19 enum {
20         U_MUSIC_UNKNOWN,
21         U_MUSIC_IT,
22         U_MUSIC_S3M,
23         U_MUSIC_XM,
24 };
25
26 struct UMusic {
27         GObject parent;
28 };
29
30 struct UMusicClass {
31         GObjectClass parent;
32 };
33
34 GType u_music_get_type(void);
35
36 static inline GObject *u_music_new(void)
37 {
38         return g_object_new(u_music_get_type(), NULL);
39 }
40
41 #endif