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
124
125
|
/*
* Copyright (C) 2006, Jamie McCracken <jamiemcc@gnome.org>
* Copyright (C) 2008, Nokia <ivan.frade@nokia.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
* 02110-1301 USA
*/
#ifndef __LIBTRACKER_DATA_CLASS_H__
#define __LIBTRACKER_DATA_CLASS_H__
#include <glib-object.h>
G_BEGIN_DECLS
#if !defined (__LIBTRACKER_DATA_INSIDE__) && !defined (TRACKER_COMPILATION)
#error "only <libtracker-data/tracker-data.h> must be included directly."
#endif
#define TRACKER_TYPE_CLASS (tracker_class_get_type ())
#define TRACKER_CLASS(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), TRACKER_TYPE_CLASS, TrackerClass))
#define TRACKER_CLASS_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), TRACKER_TYPE_CLASS, TrackerClassClass))
#define TRACKER_IS_CLASS(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), TRACKER_TYPE_CLASS))
#define TRACKER_IS_CLASS_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), TRACKER_TYPE_CLASS))
#define TRACKER_CLASS_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), TRACKER_TYPE_CLASS, TrackerClassClass))
typedef struct _TrackerOntologies TrackerOntologies;
typedef struct _TrackerProperty TrackerProperty;
typedef struct _TrackerClass TrackerClass;
typedef struct _TrackerClassClass TrackerClassClass;
typedef struct _TrackerClassPrivate TrackerClassPrivate;
struct _TrackerClass {
GObject parent;
TrackerClassPrivate *priv;
};
struct _TrackerClassClass {
GObjectClass parent_class;
};
typedef void (*TrackerEventsForeach) (gint graph_id,
gint subject_id,
gint pred_id,
gint object_id,
gpointer user_data);
GType tracker_class_get_type (void) G_GNUC_CONST;
TrackerClass * tracker_class_new (gboolean use_gvdb);
const gchar * tracker_class_get_uri (TrackerClass *service);
const gchar * tracker_class_get_name (TrackerClass *service);
gint tracker_class_get_count (TrackerClass *service);
gint tracker_class_get_id (TrackerClass *service);
gboolean tracker_class_get_is_new (TrackerClass *service);
gboolean tracker_class_get_db_schema_changed (TrackerClass *service);
gboolean tracker_class_get_notify (TrackerClass *service);
TrackerClass **tracker_class_get_super_classes (TrackerClass *service);
TrackerProperty **tracker_class_get_domain_indexes (TrackerClass *service);
TrackerProperty **tracker_class_get_last_domain_indexes(TrackerClass *service);
TrackerClass **tracker_class_get_last_super_classes (TrackerClass *service);
void tracker_class_set_uri (TrackerClass *service,
const gchar *value);
void tracker_class_set_count (TrackerClass *service,
gint value);
void tracker_class_add_super_class (TrackerClass *service,
TrackerClass *value);
void tracker_class_add_domain_index (TrackerClass *service,
TrackerProperty *value);
void tracker_class_del_domain_index (TrackerClass *service,
TrackerProperty *value);
void tracker_class_reset_domain_indexes (TrackerClass *service);
void tracker_class_reset_super_classes (TrackerClass *service);
void tracker_class_set_id (TrackerClass *service,
gint id);
void tracker_class_set_is_new (TrackerClass *service,
gboolean value);
void tracker_class_set_db_schema_changed (TrackerClass *service,
gboolean value);
void tracker_class_set_notify (TrackerClass *service,
gboolean value);
void tracker_class_set_ontologies (TrackerClass *class,
TrackerOntologies *ontologies);
/* For signals API */
void tracker_class_foreach_delete_event (TrackerClass *class,
TrackerEventsForeach foreach,
gpointer user_data);
void tracker_class_foreach_insert_event (TrackerClass *class,
TrackerEventsForeach foreach,
gpointer user_data);
gboolean tracker_class_has_insert_events (TrackerClass *class);
gboolean tracker_class_has_delete_events (TrackerClass *class);
void tracker_class_reset_ready_events (TrackerClass *class);
void tracker_class_reset_pending_events (TrackerClass *class);
void tracker_class_transact_events (TrackerClass *class);
void tracker_class_add_delete_event (TrackerClass *class,
gint graph_id,
gint subject_id,
gint pred_id,
gint object_id);
void tracker_class_add_insert_event (TrackerClass *class,
gint graph_id,
gint subject_id,
gint pred_id,
gint object_id);
G_END_DECLS
#endif /* __LIBTRACKER_DATA_CLASS_H__ */
|