1 /* dmapcopy.c generated by valac 0.48.6, the Vala compiler
2 * generated from dmapcopy.vala, do not modify */
3
4 /* FILE: dmapcopy.vala -- Copy files from a DMAP server
5 * AUTHOR: W. Michael Petullo <mike@flyn.org>
6 * DATE: 20 December 2010
7 *
8 * Copyright (c) 2010 W. Michael Petullo <new@flyn.org>
9 * All rights reserved.
10 *
11 * This program is free software; you can redistribute it and/or modify
12 * it under the terms of the GNU General Public License as published by
13 * the Free Software Foundation; either version 2 of the License, or
14 * (at your option) any later version.
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU General Public License for more details.
20 *
21 * You should have received a copy of the GNU General Public License
22 * along with this program; if not, write to the Free Software
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
24 */
25
26 #include <glib-object.h>
27 #include <libdmapsharing/dmap.h>
28 #include <glib.h>
29 #include <stdlib.h>
30 #include <string.h>
31 #include <stdio.h>
32 #include <gobject/gvaluecollector.h>
33
34 #define TYPE_DPAP_COPY (dpap_copy_get_type ())
35 #define DPAP_COPY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_DPAP_COPY, DPAPCopy))
36 #define DPAP_COPY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_DPAP_COPY, DPAPCopyClass))
37 #define IS_DPAP_COPY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_DPAP_COPY))
38 #define IS_DPAP_COPY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_DPAP_COPY))
39 #define DPAP_COPY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_DPAP_COPY, DPAPCopyClass))
40
41 typedef struct _DPAPCopy DPAPCopy;
42 typedef struct _DPAPCopyClass DPAPCopyClass;
43 typedef struct _DPAPCopyPrivate DPAPCopyPrivate;
44
45 #define TYPE_VALA_DMAP_DB (vala_dmap_db_get_type ())
46 #define VALA_DMAP_DB(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VALA_DMAP_DB, ValaDMAPDb))
47 #define VALA_DMAP_DB_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VALA_DMAP_DB, ValaDMAPDbClass))
48 #define IS_VALA_DMAP_DB(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VALA_DMAP_DB))
49 #define IS_VALA_DMAP_DB_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VALA_DMAP_DB))
50 #define VALA_DMAP_DB_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VALA_DMAP_DB, ValaDMAPDbClass))
51
52 typedef struct _ValaDMAPDb ValaDMAPDb;
53 typedef struct _ValaDMAPDbClass ValaDMAPDbClass;
54
55 #define TYPE_VALA_DPAP_RECORD_FACTORY (vala_dpap_record_factory_get_type ())
56 #define VALA_DPAP_RECORD_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VALA_DPAP_RECORD_FACTORY, ValaDPAPRecordFactory))
57 #define VALA_DPAP_RECORD_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VALA_DPAP_RECORD_FACTORY, ValaDPAPRecordFactoryClass))
58 #define IS_VALA_DPAP_RECORD_FACTORY(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VALA_DPAP_RECORD_FACTORY))
59 #define IS_VALA_DPAP_RECORD_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VALA_DPAP_RECORD_FACTORY))
60 #define VALA_DPAP_RECORD_FACTORY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VALA_DPAP_RECORD_FACTORY, ValaDPAPRecordFactoryClass))
61
62 typedef struct _ValaDPAPRecordFactory ValaDPAPRecordFactory;
63 typedef struct _ValaDPAPRecordFactoryClass ValaDPAPRecordFactoryClass;
64 #define _g_object_unref0(var) ((var == NULL) ? NULL : (var = (g_object_unref (var), NULL)))
65
66 #define TYPE_VALA_DPAP_RECORD (vala_dpap_record_get_type ())
67 #define VALA_DPAP_RECORD(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_VALA_DPAP_RECORD, ValaDPAPRecord))
68 #define VALA_DPAP_RECORD_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_VALA_DPAP_RECORD, ValaDPAPRecordClass))
69 #define IS_VALA_DPAP_RECORD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_VALA_DPAP_RECORD))
70 #define IS_VALA_DPAP_RECORD_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), TYPE_VALA_DPAP_RECORD))
71 #define VALA_DPAP_RECORD_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), TYPE_VALA_DPAP_RECORD, ValaDPAPRecordClass))
72
73 typedef struct _ValaDPAPRecord ValaDPAPRecord;
74 typedef struct _ValaDPAPRecordClass ValaDPAPRecordClass;
75 #define _dpap_copy_unref0(var) ((var == NULL) ? NULL : (var = (dpap_copy_unref (var), NULL)))
76 typedef struct _ParamSpecDPAPCopy ParamSpecDPAPCopy;
77 #define _g_main_loop_unref0(var) ((var == NULL) ? NULL : (var = (g_main_loop_unref (var), NULL)))
78
79 struct _DPAPCopy {
80 GTypeInstance parent_instance;
81 volatile int ref_count;
82 DPAPCopyPrivate * priv;
83 };
84
85 struct _DPAPCopyClass {
86 GTypeClass parent_class;
87 void (*finalize) (DPAPCopy *self);
88 };
89
90 struct _DPAPCopyPrivate {
91 DMAPMdnsBrowser* browser;
92 DMAPConnection* connection;
93 ValaDMAPDb* db;
94 ValaDPAPRecordFactory* factory;
95 };
96
97 struct _ParamSpecDPAPCopy {
98 GParamSpec parent_instance;
99 };
100
101 static gint DPAPCopy_private_offset;
102 static gpointer dpap_copy_parent_class = NULL;
103
104 gpointer dpap_copy_ref (gpointer instance);
105 void dpap_copy_unref (gpointer instance);
106 GParamSpec* param_spec_dpap_copy (const gchar* name,
107 const gchar* nick,
108 const gchar* blurb,
109 GType object_type,
110 GParamFlags flags);
111 void value_set_dpap_copy (GValue* value,
112 gpointer v_object);
113 void value_take_dpap_copy (GValue* value,
114 gpointer v_object);
115 gpointer value_get_dpap_copy (const GValue* value);
116 GType dpap_copy_get_type (void) G_GNUC_CONST;
117 G_DEFINE_AUTOPTR_CLEANUP_FUNC (DPAPCopy, dpap_copy_unref)
118 GType vala_dmap_db_get_type (void) G_GNUC_CONST;
119 G_DEFINE_AUTOPTR_CLEANUP_FUNC (ValaDMAPDb, g_object_unref)
120 GType vala_dpap_record_factory_get_type (void) G_GNUC_CONST;
121 G_DEFINE_AUTOPTR_CLEANUP_FUNC (ValaDPAPRecordFactory, g_object_unref)
122 static gboolean dpap_copy_connected_cb (DPAPCopy* self,
123 DMAPConnection* connection,
124 gboolean _result_,
125 const gchar* reason);
126 static void __lambda4_ (DPAPCopy* self,
127 gconstpointer k,
128 gconstpointer v);
129 GType vala_dpap_record_get_type (void) G_GNUC_CONST;
130 G_DEFINE_AUTOPTR_CLEANUP_FUNC (ValaDPAPRecord, g_object_unref)
131 const gchar* vala_dpap_record_get_location (ValaDPAPRecord* self);
132 static void ___lambda4__gh_func (gconstpointer key,
133 gconstpointer value,
134 gpointer self);
135 static void dpap_copy_service_added_cb (DPAPCopy* self,
136 DMAPMdnsBrowserService* service);
137 static gboolean _dpap_copy_connected_cb_dmap_connection_callback (DMAPConnection* connection,
138 gboolean _result_,
139 const gchar* reason,
140 gpointer self);
141 DPAPCopy* dpap_copy_new (GError** error);
142 DPAPCopy* dpap_copy_construct (GType object_type,
143 GError** error);
144 ValaDMAPDb* vala_dmap_db_new (void);
145 ValaDMAPDb* vala_dmap_db_construct (GType object_type);
146 ValaDPAPRecordFactory* vala_dpap_record_factory_new (void);
147 ValaDPAPRecordFactory* vala_dpap_record_factory_construct (GType object_type);
148 static void _dpap_copy_service_added_cb_dmap_mdns_browser_service_added (DMAPMdnsBrowser* _sender,
149 void* service,
150 gpointer self);
151 static void dpap_copy_finalize (DPAPCopy * obj);
152 static GType dpap_copy_get_type_once (void);
153 void debug_printf (const gchar* log_domain,
154 GLogLevelFlags log_level,
155 const gchar* message);
156 void debug_null (const gchar* log_domain,
157 GLogLevelFlags log_level,
158 const gchar* message);
159 gint _vala_main (gchar** args,
160 gint args_length1);
161 static void _debug_null_glog_func (const gchar* log_domain,
162 GLogLevelFlags log_levels,
163 const gchar* message,
164 gpointer self);
165
166 static inline gpointer
dpap_copy_get_instance_private(DPAPCopy * self)167 dpap_copy_get_instance_private (DPAPCopy* self)
168 {
169 return G_STRUCT_MEMBER_P (self, DPAPCopy_private_offset);
170 }
171
172 static void
__lambda4_(DPAPCopy * self,gconstpointer k,gconstpointer v)173 __lambda4_ (DPAPCopy* self,
174 gconstpointer k,
175 gconstpointer v)
176 {
177 FILE* _tmp0_;
178 const gchar* _tmp1_;
179 const gchar* _tmp2_;
180 _tmp0_ = stdout;
181 _tmp1_ = vala_dpap_record_get_location (G_TYPE_CHECK_INSTANCE_CAST (v, TYPE_VALA_DPAP_RECORD, ValaDPAPRecord));
182 _tmp2_ = _tmp1_;
183 fprintf (_tmp0_, "%s\n", _tmp2_);
184 }
185
186 static void
___lambda4__gh_func(gconstpointer key,gconstpointer value,gpointer self)187 ___lambda4__gh_func (gconstpointer key,
188 gconstpointer value,
189 gpointer self)
190 {
191 __lambda4_ ((DPAPCopy*) self, key, value);
192 }
193
194 static gboolean
dpap_copy_connected_cb(DPAPCopy * self,DMAPConnection * connection,gboolean _result_,const gchar * reason)195 dpap_copy_connected_cb (DPAPCopy* self,
196 DMAPConnection* connection,
197 gboolean _result_,
198 const gchar* reason)
199 {
200 ValaDMAPDb* _tmp0_;
201 ValaDMAPDb* _tmp1_;
202 gboolean result = FALSE;
203 g_return_val_if_fail (self != NULL, FALSE);
204 g_return_val_if_fail (connection != NULL, FALSE);
205 _tmp0_ = self->priv->db;
206 g_debug ("%" G_GINT64_FORMAT " entries\n", dmap_db_count ((DMAPDb*) _tmp0_));
207 _tmp1_ = self->priv->db;
208 dmap_db_foreach ((DMAPDb*) _tmp1_, ___lambda4__gh_func, self);
209 result = TRUE;
210 return result;
211 }
212
213 static gboolean
_dpap_copy_connected_cb_dmap_connection_callback(DMAPConnection * connection,gboolean _result_,const gchar * reason,gpointer self)214 _dpap_copy_connected_cb_dmap_connection_callback (DMAPConnection* connection,
215 gboolean _result_,
216 const gchar* reason,
217 gpointer self)
218 {
219 gboolean result;
220 result = dpap_copy_connected_cb ((DPAPCopy*) self, connection, _result_, reason);
221 return result;
222 }
223
224 static void
dpap_copy_service_added_cb(DPAPCopy * self,DMAPMdnsBrowserService * service)225 dpap_copy_service_added_cb (DPAPCopy* self,
226 DMAPMdnsBrowserService* service)
227 {
228 const gchar* _tmp0_;
229 const gchar* _tmp1_;
230 ValaDMAPDb* _tmp2_;
231 ValaDPAPRecordFactory* _tmp3_;
232 DPAPConnection* _tmp4_;
233 DMAPConnection* _tmp5_;
234 g_return_if_fail (self != NULL);
235 _tmp0_ = service->service_name;
236 _tmp1_ = service->host;
237 _tmp2_ = self->priv->db;
238 _tmp3_ = self->priv->factory;
239 _tmp4_ = dpap_connection_new (_tmp0_, _tmp1_, service->port, (DMAPDb*) _tmp2_, (DMAPRecordFactory*) _tmp3_);
240 _g_object_unref0 (self->priv->connection);
241 self->priv->connection = G_TYPE_CHECK_INSTANCE_CAST (_tmp4_, DMAP_TYPE_CONNECTION, DMAPConnection);
242 _tmp5_ = self->priv->connection;
243 dmap_connection_connect (_tmp5_, _dpap_copy_connected_cb_dmap_connection_callback, self);
244 }
245
246 static void
_dpap_copy_service_added_cb_dmap_mdns_browser_service_added(DMAPMdnsBrowser * _sender,void * service,gpointer self)247 _dpap_copy_service_added_cb_dmap_mdns_browser_service_added (DMAPMdnsBrowser* _sender,
248 void* service,
249 gpointer self)
250 {
251 dpap_copy_service_added_cb ((DPAPCopy*) self, service);
252 }
253
254 DPAPCopy*
dpap_copy_construct(GType object_type,GError ** error)255 dpap_copy_construct (GType object_type,
256 GError** error)
257 {
258 DPAPCopy* self = NULL;
259 ValaDMAPDb* _tmp0_;
260 ValaDPAPRecordFactory* _tmp1_;
261 DMAPMdnsBrowser* _tmp2_;
262 DMAPMdnsBrowser* _tmp3_;
263 DMAPMdnsBrowser* _tmp4_;
264 GError* _inner_error0_ = NULL;
265 self = (DPAPCopy*) g_type_create_instance (object_type);
266 _tmp0_ = vala_dmap_db_new ();
267 _g_object_unref0 (self->priv->db);
268 self->priv->db = _tmp0_;
269 _tmp1_ = vala_dpap_record_factory_new ();
270 _g_object_unref0 (self->priv->factory);
271 self->priv->factory = _tmp1_;
272 _tmp2_ = dmap_mdns_browser_new (DMAP_MDNS_BROWSER_SERVICE_TYPE_DPAP);
273 _g_object_unref0 (self->priv->browser);
274 self->priv->browser = _tmp2_;
275 _tmp3_ = self->priv->browser;
276 g_signal_connect (_tmp3_, "service-added", (GCallback) _dpap_copy_service_added_cb_dmap_mdns_browser_service_added, self);
277 _tmp4_ = self->priv->browser;
278 dmap_mdns_browser_start (_tmp4_, &_inner_error0_);
279 if (G_UNLIKELY (_inner_error0_ != NULL)) {
280 g_propagate_error (error, _inner_error0_);
281 _dpap_copy_unref0 (self);
282 return NULL;
283 }
284 return self;
285 }
286
287 DPAPCopy*
dpap_copy_new(GError ** error)288 dpap_copy_new (GError** error)
289 {
290 return dpap_copy_construct (TYPE_DPAP_COPY, error);
291 }
292
293 static void
value_dpap_copy_init(GValue * value)294 value_dpap_copy_init (GValue* value)
295 {
296 value->data[0].v_pointer = NULL;
297 }
298
299 static void
value_dpap_copy_free_value(GValue * value)300 value_dpap_copy_free_value (GValue* value)
301 {
302 if (value->data[0].v_pointer) {
303 dpap_copy_unref (value->data[0].v_pointer);
304 }
305 }
306
307 static void
value_dpap_copy_copy_value(const GValue * src_value,GValue * dest_value)308 value_dpap_copy_copy_value (const GValue* src_value,
309 GValue* dest_value)
310 {
311 if (src_value->data[0].v_pointer) {
312 dest_value->data[0].v_pointer = dpap_copy_ref (src_value->data[0].v_pointer);
313 } else {
314 dest_value->data[0].v_pointer = NULL;
315 }
316 }
317
318 static gpointer
value_dpap_copy_peek_pointer(const GValue * value)319 value_dpap_copy_peek_pointer (const GValue* value)
320 {
321 return value->data[0].v_pointer;
322 }
323
324 static gchar*
value_dpap_copy_collect_value(GValue * value,guint n_collect_values,GTypeCValue * collect_values,guint collect_flags)325 value_dpap_copy_collect_value (GValue* value,
326 guint n_collect_values,
327 GTypeCValue* collect_values,
328 guint collect_flags)
329 {
330 if (collect_values[0].v_pointer) {
331 DPAPCopy * object;
332 object = collect_values[0].v_pointer;
333 if (object->parent_instance.g_class == NULL) {
334 return g_strconcat ("invalid unclassed object pointer for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
335 } else if (!g_value_type_compatible (G_TYPE_FROM_INSTANCE (object), G_VALUE_TYPE (value))) {
336 return g_strconcat ("invalid object type `", g_type_name (G_TYPE_FROM_INSTANCE (object)), "' for value type `", G_VALUE_TYPE_NAME (value), "'", NULL);
337 }
338 value->data[0].v_pointer = dpap_copy_ref (object);
339 } else {
340 value->data[0].v_pointer = NULL;
341 }
342 return NULL;
343 }
344
345 static gchar*
value_dpap_copy_lcopy_value(const GValue * value,guint n_collect_values,GTypeCValue * collect_values,guint collect_flags)346 value_dpap_copy_lcopy_value (const GValue* value,
347 guint n_collect_values,
348 GTypeCValue* collect_values,
349 guint collect_flags)
350 {
351 DPAPCopy ** object_p;
352 object_p = collect_values[0].v_pointer;
353 if (!object_p) {
354 return g_strdup_printf ("value location for `%s' passed as NULL", G_VALUE_TYPE_NAME (value));
355 }
356 if (!value->data[0].v_pointer) {
357 *object_p = NULL;
358 } else if (collect_flags & G_VALUE_NOCOPY_CONTENTS) {
359 *object_p = value->data[0].v_pointer;
360 } else {
361 *object_p = dpap_copy_ref (value->data[0].v_pointer);
362 }
363 return NULL;
364 }
365
366 GParamSpec*
param_spec_dpap_copy(const gchar * name,const gchar * nick,const gchar * blurb,GType object_type,GParamFlags flags)367 param_spec_dpap_copy (const gchar* name,
368 const gchar* nick,
369 const gchar* blurb,
370 GType object_type,
371 GParamFlags flags)
372 {
373 ParamSpecDPAPCopy* spec;
374 g_return_val_if_fail (g_type_is_a (object_type, TYPE_DPAP_COPY), NULL);
375 spec = g_param_spec_internal (G_TYPE_PARAM_OBJECT, name, nick, blurb, flags);
376 G_PARAM_SPEC (spec)->value_type = object_type;
377 return G_PARAM_SPEC (spec);
378 }
379
380 gpointer
value_get_dpap_copy(const GValue * value)381 value_get_dpap_copy (const GValue* value)
382 {
383 g_return_val_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_DPAP_COPY), NULL);
384 return value->data[0].v_pointer;
385 }
386
387 void
value_set_dpap_copy(GValue * value,gpointer v_object)388 value_set_dpap_copy (GValue* value,
389 gpointer v_object)
390 {
391 DPAPCopy * old;
392 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_DPAP_COPY));
393 old = value->data[0].v_pointer;
394 if (v_object) {
395 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_DPAP_COPY));
396 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
397 value->data[0].v_pointer = v_object;
398 dpap_copy_ref (value->data[0].v_pointer);
399 } else {
400 value->data[0].v_pointer = NULL;
401 }
402 if (old) {
403 dpap_copy_unref (old);
404 }
405 }
406
407 void
value_take_dpap_copy(GValue * value,gpointer v_object)408 value_take_dpap_copy (GValue* value,
409 gpointer v_object)
410 {
411 DPAPCopy * old;
412 g_return_if_fail (G_TYPE_CHECK_VALUE_TYPE (value, TYPE_DPAP_COPY));
413 old = value->data[0].v_pointer;
414 if (v_object) {
415 g_return_if_fail (G_TYPE_CHECK_INSTANCE_TYPE (v_object, TYPE_DPAP_COPY));
416 g_return_if_fail (g_value_type_compatible (G_TYPE_FROM_INSTANCE (v_object), G_VALUE_TYPE (value)));
417 value->data[0].v_pointer = v_object;
418 } else {
419 value->data[0].v_pointer = NULL;
420 }
421 if (old) {
422 dpap_copy_unref (old);
423 }
424 }
425
426 static void
dpap_copy_class_init(DPAPCopyClass * klass,gpointer klass_data)427 dpap_copy_class_init (DPAPCopyClass * klass,
428 gpointer klass_data)
429 {
430 dpap_copy_parent_class = g_type_class_peek_parent (klass);
431 ((DPAPCopyClass *) klass)->finalize = dpap_copy_finalize;
432 g_type_class_adjust_private_offset (klass, &DPAPCopy_private_offset);
433 }
434
435 static void
dpap_copy_instance_init(DPAPCopy * self,gpointer klass)436 dpap_copy_instance_init (DPAPCopy * self,
437 gpointer klass)
438 {
439 self->priv = dpap_copy_get_instance_private (self);
440 self->ref_count = 1;
441 }
442
443 static void
dpap_copy_finalize(DPAPCopy * obj)444 dpap_copy_finalize (DPAPCopy * obj)
445 {
446 DPAPCopy * self;
447 self = G_TYPE_CHECK_INSTANCE_CAST (obj, TYPE_DPAP_COPY, DPAPCopy);
448 g_signal_handlers_destroy (self);
449 _g_object_unref0 (self->priv->browser);
450 _g_object_unref0 (self->priv->connection);
451 _g_object_unref0 (self->priv->db);
452 _g_object_unref0 (self->priv->factory);
453 }
454
455 static GType
dpap_copy_get_type_once(void)456 dpap_copy_get_type_once (void)
457 {
458 static const GTypeValueTable g_define_type_value_table = { value_dpap_copy_init, value_dpap_copy_free_value, value_dpap_copy_copy_value, value_dpap_copy_peek_pointer, "p", value_dpap_copy_collect_value, "p", value_dpap_copy_lcopy_value };
459 static const GTypeInfo g_define_type_info = { sizeof (DPAPCopyClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) dpap_copy_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DPAPCopy), 0, (GInstanceInitFunc) dpap_copy_instance_init, &g_define_type_value_table };
460 static const GTypeFundamentalInfo g_define_type_fundamental_info = { (G_TYPE_FLAG_CLASSED | G_TYPE_FLAG_INSTANTIATABLE | G_TYPE_FLAG_DERIVABLE | G_TYPE_FLAG_DEEP_DERIVABLE) };
461 GType dpap_copy_type_id;
462 dpap_copy_type_id = g_type_register_fundamental (g_type_fundamental_next (), "DPAPCopy", &g_define_type_info, &g_define_type_fundamental_info, 0);
463 DPAPCopy_private_offset = g_type_add_instance_private (dpap_copy_type_id, sizeof (DPAPCopyPrivate));
464 return dpap_copy_type_id;
465 }
466
467 GType
dpap_copy_get_type(void)468 dpap_copy_get_type (void)
469 {
470 static volatile gsize dpap_copy_type_id__volatile = 0;
471 if (g_once_init_enter (&dpap_copy_type_id__volatile)) {
472 GType dpap_copy_type_id;
473 dpap_copy_type_id = dpap_copy_get_type_once ();
474 g_once_init_leave (&dpap_copy_type_id__volatile, dpap_copy_type_id);
475 }
476 return dpap_copy_type_id__volatile;
477 }
478
479 gpointer
dpap_copy_ref(gpointer instance)480 dpap_copy_ref (gpointer instance)
481 {
482 DPAPCopy * self;
483 self = instance;
484 g_atomic_int_inc (&self->ref_count);
485 return instance;
486 }
487
488 void
dpap_copy_unref(gpointer instance)489 dpap_copy_unref (gpointer instance)
490 {
491 DPAPCopy * self;
492 self = instance;
493 if (g_atomic_int_dec_and_test (&self->ref_count)) {
494 DPAP_COPY_GET_CLASS (self)->finalize (self);
495 g_type_free_instance ((GTypeInstance *) self);
496 }
497 }
498
499 void
debug_printf(const gchar * log_domain,GLogLevelFlags log_level,const gchar * message)500 debug_printf (const gchar* log_domain,
501 GLogLevelFlags log_level,
502 const gchar* message)
503 {
504 FILE* _tmp0_;
505 _tmp0_ = stdout;
506 fprintf (_tmp0_, "%s\n", message);
507 }
508
509 void
debug_null(const gchar * log_domain,GLogLevelFlags log_level,const gchar * message)510 debug_null (const gchar* log_domain,
511 GLogLevelFlags log_level,
512 const gchar* message)
513 {
514 }
515
516 static void
_debug_null_glog_func(const gchar * log_domain,GLogLevelFlags log_levels,const gchar * message,gpointer self)517 _debug_null_glog_func (const gchar* log_domain,
518 GLogLevelFlags log_levels,
519 const gchar* message,
520 gpointer self)
521 {
522 debug_null (log_domain, log_levels, message);
523 }
524
525 gint
_vala_main(gchar ** args,gint args_length1)526 _vala_main (gchar** args,
527 gint args_length1)
528 {
529 GMainLoop* loop = NULL;
530 GMainLoop* _tmp0_;
531 DPAPCopy* dmapcopy = NULL;
532 DPAPCopy* _tmp1_;
533 GError* _inner_error0_ = NULL;
534 gint result = 0;
535 _tmp0_ = g_main_loop_new (NULL, FALSE);
536 loop = _tmp0_;
537 g_log_set_handler ("libdmapsharing", G_LOG_LEVEL_DEBUG, _debug_null_glog_func, NULL);
538 g_log_set_handler (NULL, G_LOG_LEVEL_DEBUG, _debug_null_glog_func, NULL);
539 _tmp1_ = dpap_copy_new (&_inner_error0_);
540 dmapcopy = _tmp1_;
541 if (G_UNLIKELY (_inner_error0_ != NULL)) {
542 gint _tmp2_ = -1;
543 _g_main_loop_unref0 (loop);
544 g_critical ("file %s: line %d: uncaught error: %s (%s, %d)", __FILE__, __LINE__, _inner_error0_->message, g_quark_to_string (_inner_error0_->domain), _inner_error0_->code);
545 g_clear_error (&_inner_error0_);
546 return _tmp2_;
547 }
548 g_main_loop_run (loop);
549 result = 0;
550 _dpap_copy_unref0 (dmapcopy);
551 _g_main_loop_unref0 (loop);
552 return result;
553 }
554
555 int
main(int argc,char ** argv)556 main (int argc,
557 char ** argv)
558 {
559 return _vala_main (argv, argc);
560 }
561
562