/* OperationStatus.c generated by valac 0.56.18-dirty, the Vala compiler
 * generated from OperationStatus.vala, do not modify */

/* -*- Mode: Vala; indent-tabs-mode: nil; tab-width: 2 -*-
 *
 * SPDX-License-Identifier: GPL-3.0-or-later
 * SPDX-FileCopyrightText: Michael Terry
 */

#include "deja.h"
#include <glib.h>
#include <glib-object.h>

#if !defined(VALA_STRICT_C)
#if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ >= 14)
#pragma GCC diagnostic warning "-Wincompatible-pointer-types"
#elif defined(__clang__) && (__clang_major__ >= 16)
#pragma clang diagnostic ignored "-Wincompatible-function-pointer-types"
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
#endif
#endif

enum  {
	DEJA_DUP_OPERATION_STATUS_0_PROPERTY,
	DEJA_DUP_OPERATION_STATUS_NUM_PROPERTIES
};
static GParamSpec* deja_dup_operation_status_properties[DEJA_DUP_OPERATION_STATUS_NUM_PROPERTIES];
enum  {
	DEJA_DUP_OPERATION_STATUS_COLLECTION_DATES_SIGNAL,
	DEJA_DUP_OPERATION_STATUS_NUM_SIGNALS
};
static guint deja_dup_operation_status_signals[DEJA_DUP_OPERATION_STATUS_NUM_SIGNALS] = {0};

static gpointer deja_dup_operation_status_parent_class = NULL;

static void deja_dup_operation_status_real_connect_to_job (DejaDupOperation* base,
                                                    gboolean actions);
static void __lambda47_ (DejaDupOperationStatus* self,
                  DejaDupToolJob* d,
                  GList* dates);
static void ___lambda47__deja_dup_tool_job_collection_dates (DejaDupToolJob* _sender,
                                                      GList* infos,
                                                      gpointer self);
static GType deja_dup_operation_status_get_type_once (void);

DejaDupOperationStatus*
deja_dup_operation_status_construct (GType object_type,
                                     DejaDupBackend* backend)
{
	DejaDupOperationStatus * self = NULL;
	g_return_val_if_fail (backend != NULL, NULL);
	self = (DejaDupOperationStatus*) g_object_new (object_type, "mode", DEJA_DUP_TOOL_JOB_MODE_LIST_SNAPSHOTS, "backend", backend, NULL);
	return self;
}

DejaDupOperationStatus*
deja_dup_operation_status_new (DejaDupBackend* backend)
{
	return deja_dup_operation_status_construct (DEJA_DUP_TYPE_OPERATION_STATUS, backend);
}

static void
__lambda47_ (DejaDupOperationStatus* self,
             DejaDupToolJob* d,
             GList* dates)
{
	g_return_if_fail (d != NULL);
	g_signal_emit (self, deja_dup_operation_status_signals[DEJA_DUP_OPERATION_STATUS_COLLECTION_DATES_SIGNAL], 0, dates);
}

static void
___lambda47__deja_dup_tool_job_collection_dates (DejaDupToolJob* _sender,
                                                 GList* infos,
                                                 gpointer self)
{
	__lambda47_ ((DejaDupOperationStatus*) self, _sender, infos);
}

static void
deja_dup_operation_status_real_connect_to_job (DejaDupOperation* base,
                                               gboolean actions)
{
	DejaDupOperationStatus * self;
	DejaDupToolJob* _tmp0_;
	self = (DejaDupOperationStatus*) base;
	_tmp0_ = ((DejaDupOperation*) self)->job;
	g_signal_connect_object (_tmp0_, "collection-dates", (GCallback) ___lambda47__deja_dup_tool_job_collection_dates, self, 0);
	DEJA_DUP_OPERATION_CLASS (deja_dup_operation_status_parent_class)->connect_to_job (G_TYPE_CHECK_INSTANCE_CAST (self, DEJA_DUP_TYPE_OPERATION, DejaDupOperation), actions);
}

static void
deja_dup_operation_status_class_init (DejaDupOperationStatusClass * klass,
                                      gpointer klass_data)
{
	deja_dup_operation_status_parent_class = g_type_class_peek_parent (klass);
	((DejaDupOperationClass *) klass)->connect_to_job = (void (*) (DejaDupOperation*, gboolean)) deja_dup_operation_status_real_connect_to_job;
	deja_dup_operation_status_signals[DEJA_DUP_OPERATION_STATUS_COLLECTION_DATES_SIGNAL] = g_signal_new ("collection-dates", DEJA_DUP_TYPE_OPERATION_STATUS, G_SIGNAL_RUN_LAST, 0, NULL, NULL, g_cclosure_marshal_VOID__POINTER, G_TYPE_NONE, 1, G_TYPE_POINTER);
}

static void
deja_dup_operation_status_instance_init (DejaDupOperationStatus * self,
                                         gpointer klass)
{
}

 G_GNUC_NO_INLINE static GType
deja_dup_operation_status_get_type_once (void)
{
	static const GTypeInfo g_define_type_info = { sizeof (DejaDupOperationStatusClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) deja_dup_operation_status_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (DejaDupOperationStatus), 0, (GInstanceInitFunc) deja_dup_operation_status_instance_init, NULL };
	GType deja_dup_operation_status_type_id;
	deja_dup_operation_status_type_id = g_type_register_static (DEJA_DUP_TYPE_OPERATION, "DejaDupOperationStatus", &g_define_type_info, 0);
	return deja_dup_operation_status_type_id;
}

GType
deja_dup_operation_status_get_type (void)
{
	static gsize deja_dup_operation_status_type_id__once = 0;
	if (g_once_init_enter (&deja_dup_operation_status_type_id__once)) {
		GType deja_dup_operation_status_type_id;
		deja_dup_operation_status_type_id = deja_dup_operation_status_get_type_once ();
		g_once_init_leave (&deja_dup_operation_status_type_id__once, deja_dup_operation_status_type_id);
	}
	return deja_dup_operation_status_type_id__once;
}

