summaryrefslogtreecommitdiffstats
path: root/sync/src/sync_item.h
diff options
context:
space:
mode:
Diffstat (limited to 'sync/src/sync_item.h')
-rw-r--r--sync/src/sync_item.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/sync/src/sync_item.h b/sync/src/sync_item.h
new file mode 100644
index 0000000..f7a4930
--- /dev/null
+++ b/sync/src/sync_item.h
@@ -0,0 +1,77 @@
+
+#ifndef SYNC_ITEM_H
+#define SYNC_ITEM_H
+
+#include <glib.h>
+#include <glib-object.h>
+#include <opensync/opensync.h>
+
+G_BEGIN_DECLS
+
+#define SYNC_TYPE_ITEM sync_item_get_type()
+
+#define SYNC_ITEM(obj) \
+ (G_TYPE_CHECK_INSTANCE_CAST ((obj), \
+ SYNC_TYPE_ITEM, SyncItem))
+
+#define SYNC_ITEM_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_CAST ((klass), \
+ SYNC_TYPE_ITEM, SyncItemClass))
+
+#define SYNC_IS_ITEM(obj) \
+ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), \
+ SYNC_TYPE_ITEM))
+
+#define SYNC_IS_ITEM_CLASS(klass) \
+ (G_TYPE_CHECK_CLASS_TYPE ((klass), \
+ SYNC_TYPE_ITEM))
+
+#define SYNC_ITEM_GET_CLASS(obj) \
+ (G_TYPE_INSTANCE_GET_CLASS ((obj), \
+ SYNC_TYPE_ITEM, SyncItemClass))
+
+typedef struct {
+ GObject parent;
+} SyncItem;
+
+typedef struct {
+ GObjectClass parent_class;
+} SyncItemClass;
+
+typedef OSyncMember * (*SyncItemMemberFunc) (SyncItem *item);
+typedef void (*SyncItemDataFreeFunc) (gpointer data);
+
+GType sync_item_get_type (void);
+
+#include "sync_group.h"
+
+SyncItem * sync_item_new (const gchar * name,
+ const gchar * adr,
+ SyncItemMemberFunc member_func);
+const gchar * sync_item_get_name (SyncItem * item);
+const gchar * sync_item_get_adr (SyncItem * item);
+gpointer sync_item_get_data (SyncItem * item);
+OSyncMember * sync_item_get_member (SyncItem * item);
+SyncGroup * sync_item_get_group (SyncItem * item);
+
+SyncItemDataFreeFunc sync_item_get_data_free_func (SyncItem * item);
+SyncItemMemberFunc sync_item_get_member_func (SyncItem * item);
+
+void sync_item_set_name (SyncItem * item,
+ const gchar * name);
+void sync_item_set_adr (SyncItem * item,
+ const gchar * adr);
+void sync_item_set_data (SyncItem * item,
+ gpointer data);
+void sync_item_set_data_free_func (SyncItem * item,
+ SyncItemDataFreeFunc data_free_func);
+void sync_item_set_member_func (SyncItem * item,
+ SyncItemMemberFunc member_func);
+void sync_item_set_group (SyncItem * item,
+ SyncGroup * group);
+
+void sync_item_ungroup (SyncItem * item);
+
+G_END_DECLS
+
+#endif