Movie Info Provider: Added async. query support
[maevies] / src / mvs-minfo-provider.h
1 /*
2  * mvs-minfo-provider.h
3  *
4  * This file is part of maevies
5  * Copyright (C) 2010 Simón Pena <spenap@gmail.com>
6  *
7  * This program is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License as
9  * published by the Free Software Foundation; either version 3 of the
10  * License, or (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * General Public License for more details.
16  *
17  */
18
19 #ifndef _MVS_MINFO_PROVIDER
20 #define _MVS_MINFO_PROVIDER
21
22 #include <glib-object.h>
23 #include <libsoup/soup.h>
24
25 G_BEGIN_DECLS
26
27 #define MVS_TYPE_MINFO_PROVIDER mvs_minfo_provider_get_type()
28 #define MVS_MINFO_PROVIDER(obj) \
29   (G_TYPE_CHECK_INSTANCE_CAST ((obj), MVS_TYPE_MINFO_PROVIDER, MvsMInfoProvider))
30 #define MVS_MINFO_PROVIDER_CLASS(klass) \
31   (G_TYPE_CHECK_CLASS_CAST ((klass), MVS_TYPE_MINFO_PROVIDER, MvsMInfoProviderClass))
32 #define MVS_IS_MINFO_PROVIDER(obj) \
33   (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MVS_TYPE_MINFO_PROVIDER))
34 #define MVS_IS_MINFO_PROVIDER_CLASS(klass) \
35   (G_TYPE_CHECK_CLASS_TYPE ((klass), MVS_TYPE_MINFO_PROVIDER))
36 #define MVS_MINFO_PROVIDER_GET_CLASS(obj) \
37   (G_TYPE_INSTANCE_GET_CLASS ((obj), MVS_TYPE_MINFO_PROVIDER, MvsMInfoProviderClass))
38
39 typedef struct _MvsMInfoProviderPrivate MvsMInfoProviderPrivate;
40
41 typedef struct {
42         GObject parent;
43
44         /* <private> */
45         MvsMInfoProviderPrivate *priv;
46 } MvsMInfoProvider;
47
48 typedef struct {
49         GObjectClass parent_class;
50 } MvsMInfoProviderClass;
51
52 GType mvs_minfo_provider_get_type (void);
53 MvsMInfoProvider* mvs_minfo_provider_new (void);
54
55 gboolean mvs_minfo_provider_query (MvsMInfoProvider *self,
56                                    const gchar *query);
57
58 gboolean mvs_minfo_provider_set_format (MvsMInfoProvider *self,
59                                         const gchar *format);
60
61 G_END_DECLS
62
63 #endif /* _MVS_MINFO_PROVIDER */