1 /* iscannable-group.c generated by valac 0.32.0.49-00a57, the Vala compiler
2  * generated from iscannable-group.vala, do not modify */
3 
4 
5 #include <glib.h>
6 #include <glib-object.h>
7 
8 
9 #define CARIBOU_TYPE_ISCANNABLE_GROUP (caribou_iscannable_group_get_type ())
10 #define CARIBOU_ISCANNABLE_GROUP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CARIBOU_TYPE_ISCANNABLE_GROUP, CaribouIScannableGroup))
11 #define CARIBOU_IS_ISCANNABLE_GROUP(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CARIBOU_TYPE_ISCANNABLE_GROUP))
12 #define CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CARIBOU_TYPE_ISCANNABLE_GROUP, CaribouIScannableGroupIface))
13 
14 typedef struct _CaribouIScannableGroup CaribouIScannableGroup;
15 typedef struct _CaribouIScannableGroupIface CaribouIScannableGroupIface;
16 
17 #define CARIBOU_TYPE_ISCANNABLE_ITEM (caribou_iscannable_item_get_type ())
18 #define CARIBOU_ISCANNABLE_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), CARIBOU_TYPE_ISCANNABLE_ITEM, CaribouIScannableItem))
19 #define CARIBOU_IS_ISCANNABLE_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), CARIBOU_TYPE_ISCANNABLE_ITEM))
20 #define CARIBOU_ISCANNABLE_ITEM_GET_INTERFACE(obj) (G_TYPE_INSTANCE_GET_INTERFACE ((obj), CARIBOU_TYPE_ISCANNABLE_ITEM, CaribouIScannableItemIface))
21 
22 typedef struct _CaribouIScannableItem CaribouIScannableItem;
23 typedef struct _CaribouIScannableItemIface CaribouIScannableItemIface;
24 
25 #define CARIBOU_TYPE_SCAN_GROUPING (caribou_scan_grouping_get_type ())
26 
27 struct _CaribouIScannableItemIface {
28 	GTypeInterface parent_iface;
29 	gboolean (*get_scan_stepping) (CaribouIScannableItem* self);
30 	void (*set_scan_stepping) (CaribouIScannableItem* self, gboolean value);
31 	gboolean (*get_scan_selected) (CaribouIScannableItem* self);
32 	void (*set_scan_selected) (CaribouIScannableItem* self, gboolean value);
33 };
34 
35 typedef enum  {
36 	CARIBOU_SCAN_GROUPING_NONE,
37 	CARIBOU_SCAN_GROUPING_SUBGROUPS,
38 	CARIBOU_SCAN_GROUPING_ROWS,
39 	CARIBOU_SCAN_GROUPING_LINEAR
40 } CaribouScanGrouping;
41 
42 struct _CaribouIScannableGroupIface {
43 	GTypeInterface parent_iface;
44 	CaribouIScannableItem* (*child_select) (CaribouIScannableGroup* self);
45 	void (*scan_reset) (CaribouIScannableGroup* self);
46 	CaribouIScannableItem** (*get_scan_children) (CaribouIScannableGroup* self, int* result_length1);
47 	CaribouIScannableItem* (*child_step) (CaribouIScannableGroup* self, gint cycles);
48 	CaribouIScannableItem** (*get_step_path) (CaribouIScannableGroup* self, int* result_length1);
49 	CaribouIScannableItem** (*get_selected_path) (CaribouIScannableGroup* self, int* result_length1);
50 	CaribouScanGrouping (*get_scan_grouping) (CaribouIScannableGroup* self);
51 	void (*set_scan_grouping) (CaribouIScannableGroup* self, CaribouScanGrouping value);
52 };
53 
54 
55 
56 GType caribou_iscannable_item_get_type (void) G_GNUC_CONST;
57 GType caribou_scan_grouping_get_type (void) G_GNUC_CONST;
58 GType caribou_iscannable_group_get_type (void) G_GNUC_CONST;
59 CaribouIScannableItem* caribou_iscannable_group_child_select (CaribouIScannableGroup* self);
60 void caribou_iscannable_group_scan_reset (CaribouIScannableGroup* self);
61 CaribouIScannableItem** caribou_iscannable_group_get_scan_children (CaribouIScannableGroup* self, int* result_length1);
62 CaribouIScannableItem* caribou_iscannable_group_child_step (CaribouIScannableGroup* self, gint cycles);
63 CaribouIScannableItem** caribou_iscannable_group_get_step_path (CaribouIScannableGroup* self, int* result_length1);
64 CaribouIScannableItem** caribou_iscannable_group_get_selected_path (CaribouIScannableGroup* self, int* result_length1);
65 CaribouScanGrouping caribou_iscannable_group_get_scan_grouping (CaribouIScannableGroup* self);
66 void caribou_iscannable_group_set_scan_grouping (CaribouIScannableGroup* self, CaribouScanGrouping value);
67 
68 
caribou_iscannable_group_child_select(CaribouIScannableGroup * self)69 CaribouIScannableItem* caribou_iscannable_group_child_select (CaribouIScannableGroup* self) {
70 	g_return_val_if_fail (self != NULL, NULL);
71 	return CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->child_select (self);
72 }
73 
74 
caribou_iscannable_group_scan_reset(CaribouIScannableGroup * self)75 void caribou_iscannable_group_scan_reset (CaribouIScannableGroup* self) {
76 	g_return_if_fail (self != NULL);
77 	CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->scan_reset (self);
78 }
79 
80 
caribou_iscannable_group_get_scan_children(CaribouIScannableGroup * self,int * result_length1)81 CaribouIScannableItem** caribou_iscannable_group_get_scan_children (CaribouIScannableGroup* self, int* result_length1) {
82 	g_return_val_if_fail (self != NULL, NULL);
83 	return CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->get_scan_children (self, result_length1);
84 }
85 
86 
caribou_iscannable_group_child_step(CaribouIScannableGroup * self,gint cycles)87 CaribouIScannableItem* caribou_iscannable_group_child_step (CaribouIScannableGroup* self, gint cycles) {
88 	g_return_val_if_fail (self != NULL, NULL);
89 	return CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->child_step (self, cycles);
90 }
91 
92 
caribou_iscannable_group_get_step_path(CaribouIScannableGroup * self,int * result_length1)93 CaribouIScannableItem** caribou_iscannable_group_get_step_path (CaribouIScannableGroup* self, int* result_length1) {
94 	g_return_val_if_fail (self != NULL, NULL);
95 	return CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->get_step_path (self, result_length1);
96 }
97 
98 
caribou_iscannable_group_get_selected_path(CaribouIScannableGroup * self,int * result_length1)99 CaribouIScannableItem** caribou_iscannable_group_get_selected_path (CaribouIScannableGroup* self, int* result_length1) {
100 	g_return_val_if_fail (self != NULL, NULL);
101 	return CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->get_selected_path (self, result_length1);
102 }
103 
104 
caribou_iscannable_group_get_scan_grouping(CaribouIScannableGroup * self)105 CaribouScanGrouping caribou_iscannable_group_get_scan_grouping (CaribouIScannableGroup* self) {
106 	g_return_val_if_fail (self != NULL, 0);
107 	return CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->get_scan_grouping (self);
108 }
109 
110 
caribou_iscannable_group_set_scan_grouping(CaribouIScannableGroup * self,CaribouScanGrouping value)111 void caribou_iscannable_group_set_scan_grouping (CaribouIScannableGroup* self, CaribouScanGrouping value) {
112 	g_return_if_fail (self != NULL);
113 	CARIBOU_ISCANNABLE_GROUP_GET_INTERFACE (self)->set_scan_grouping (self, value);
114 }
115 
116 
caribou_iscannable_group_base_init(CaribouIScannableGroupIface * iface)117 static void caribou_iscannable_group_base_init (CaribouIScannableGroupIface * iface) {
118 	static gboolean initialized = FALSE;
119 	if (!initialized) {
120 		initialized = TRUE;
121 		g_object_interface_install_property (iface, g_param_spec_enum ("scan-grouping", "scan-grouping", "scan-grouping", CARIBOU_TYPE_SCAN_GROUPING, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
122 		g_signal_new ("selected_item_changed", CARIBOU_TYPE_ISCANNABLE_GROUP, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, CARIBOU_TYPE_ISCANNABLE_ITEM);
123 		g_signal_new ("step_item_changed", CARIBOU_TYPE_ISCANNABLE_GROUP, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__OBJECT, G_TYPE_NONE, 1, CARIBOU_TYPE_ISCANNABLE_ITEM);
124 		g_signal_new ("scan_cleared", CARIBOU_TYPE_ISCANNABLE_GROUP, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
125 	}
126 }
127 
128 
129 /**
130      * Interface implemented by containers of selectable items in scanning mode.
131      */
caribou_iscannable_group_get_type(void)132 GType caribou_iscannable_group_get_type (void) {
133 	static volatile gsize caribou_iscannable_group_type_id__volatile = 0;
134 	if (g_once_init_enter (&caribou_iscannable_group_type_id__volatile)) {
135 		static const GTypeInfo g_define_type_info = { sizeof (CaribouIScannableGroupIface), (GBaseInitFunc) caribou_iscannable_group_base_init, (GBaseFinalizeFunc) NULL, (GClassInitFunc) NULL, (GClassFinalizeFunc) NULL, NULL, 0, 0, (GInstanceInitFunc) NULL, NULL };
136 		GType caribou_iscannable_group_type_id;
137 		caribou_iscannable_group_type_id = g_type_register_static (G_TYPE_INTERFACE, "CaribouIScannableGroup", &g_define_type_info, 0);
138 		g_type_interface_add_prerequisite (caribou_iscannable_group_type_id, G_TYPE_OBJECT);
139 		g_once_init_leave (&caribou_iscannable_group_type_id__volatile, caribou_iscannable_group_type_id);
140 	}
141 	return caribou_iscannable_group_type_id__volatile;
142 }
143 
144 
caribou_scan_grouping_get_type(void)145 GType caribou_scan_grouping_get_type (void) {
146 	static volatile gsize caribou_scan_grouping_type_id__volatile = 0;
147 	if (g_once_init_enter (&caribou_scan_grouping_type_id__volatile)) {
148 		static const GEnumValue values[] = {{CARIBOU_SCAN_GROUPING_NONE, "CARIBOU_SCAN_GROUPING_NONE", "none"}, {CARIBOU_SCAN_GROUPING_SUBGROUPS, "CARIBOU_SCAN_GROUPING_SUBGROUPS", "subgroups"}, {CARIBOU_SCAN_GROUPING_ROWS, "CARIBOU_SCAN_GROUPING_ROWS", "rows"}, {CARIBOU_SCAN_GROUPING_LINEAR, "CARIBOU_SCAN_GROUPING_LINEAR", "linear"}, {0, NULL, NULL}};
149 		GType caribou_scan_grouping_type_id;
150 		caribou_scan_grouping_type_id = g_enum_register_static ("CaribouScanGrouping", values);
151 		g_once_init_leave (&caribou_scan_grouping_type_id__volatile, caribou_scan_grouping_type_id);
152 	}
153 	return caribou_scan_grouping_type_id__volatile;
154 }
155 
156 
157 
158