1 /* vi:set et ai sw=2 sts=2 ts=2: */
3 * Copyright (c) 2012 GENIVI.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 #ifndef __JOB_MANAGER_H__
11 #define __JOB_MANAGER_H__
13 #include <boot-manager/systemd-manager-dbus.h>
17 #define TYPE_JOB_MANAGER (job_manager_get_type())
18 #define JOB_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TYPE_JOB_MANAGER, JobManager))
19 #define JOB_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), TYPE_JOB_MANAGER, JobManagerClass))
20 #define IS_JOB_MANAGER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TYPE_JOB_MANAGER))
21 #define IS_JOB_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass, TYPE_JOB_MANAGER))
22 #define JOB_MANAGER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj, TYPE_JOB_MANAGER, JobManagerClass))
24 typedef struct _JobManagerClass JobManagerClass;
25 typedef struct _JobManager JobManager;
27 typedef void (*JobManagerCallback) (JobManager *manager,
33 GType job_manager_get_type (void) G_GNUC_CONST;
34 JobManager *job_manager_new (GDBusConnection *connection,
35 SystemdManager *systemd_manager) G_GNUC_MALLOC G_GNUC_WARN_UNUSED_RESULT;
36 void job_manager_start (JobManager *manager,
38 GCancellable *cancellable,
39 JobManagerCallback callback,
41 void job_manager_stop (JobManager *manager,
43 GCancellable *cancellable,
44 JobManagerCallback callback,
49 #endif /* !__JOB_MANAGER_H__ */