CAPS Universe documentation  1.0.4
All you need to know to be successful
caps-dbus-interface.h
Go to the documentation of this file.
1#pragma once
2
3/*
4 * SPDX-License-Identifier: LGPL-2.1-or-later
5 *
6 * (c) 2017 Jürgen Borleis <projects@caps-printing.org>
7 *
8 * This library is free software; you can redistribute it and/or modify it under
9 * the terms of the GNU Lesser General Public License 2.1 as published by the Free
10 * Software Foundation.
11 *
12 * This library is distributed in the hope that it will be useful, but WITHOUT
13 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
14 * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
15 * details.
16 */
17#include <dbus/dbus.h>
18#include <stdint.h>
19#include <signal.h>
20#include <libcapsbase.h>
21
29/* some shared functions between provider and client interface */
30void dbus_print_argument_failure(DBusMessage *message, const DBusError *error) __nonnull();
31DBusHandlerResult dbus_return_i32(DBusConnection *connection, DBusMessage *message, int32_t val) __nonnull();
32DBusHandlerResult dbus_return_i64(DBusConnection *connection, DBusMessage *message, int64_t val) __nonnull();
33DBusHandlerResult dbus_return_file_handle(DBusConnection *connection, DBusMessage *message, int fh) __nonnull();
34int64_t dbus_receive_single_i64(DBusMessage *message, DBusError *error) __nonnull();
35
36DBusHandlerResult caps_dbus_provider_dispatch(DBusConnection *connection, DBusMessage *message, void *data) __nonnull((1,2));
37DBusHandlerResult caps_dbus_client_dispatch(DBusConnection *connection, DBusMessage *message, void *data) __nonnull((1,2));
38
42
43void *dbus_coordinator_allocate(DBusBusType dbus, void *data) __nonnull();
44void dbus_coordinator_loop(void *handle, volatile sig_atomic_t *quit) __nonnull();
45void dbus_coordinator_exit(void *handle) __nonnull();
int64_t dbus_receive_single_i64(DBusMessage *message, DBusError *error)
Definition: dbus-provider-interface.c:147
void dbus_print_argument_failure(DBusMessage *message, const DBusError *error)
Definition: dbus-provider-interface.c:132
void dbus_client_send_job_change_notifier(DBusConnection *connection, caps_identifier pr_id, caps_identifier job_id, const struct object_state_job *jstate, const struct object_progression_job *jprog)
Definition: dbus-client-interface.c:863
void * dbus_coordinator_allocate(DBusBusType dbus, void *data)
Definition: dbus-transport.c:76
void dbus_coordinator_exit(void *handle)
Definition: dbus-transport.c:176
void dbus_provider_send_job_change_notifier(DBusConnection *connection, caps_identifier pr_id, caps_identifier job_id)
Definition: dbus-provider-interface.c:910
DBusHandlerResult dbus_return_file_handle(DBusConnection *connection, DBusMessage *message, int fh)
Definition: dbus-provider-interface.c:106
DBusHandlerResult caps_dbus_provider_dispatch(DBusConnection *connection, DBusMessage *message, void *data)
Definition: dbus-provider-interface.c:1067
void dbus_coordinator_loop(void *handle, volatile sig_atomic_t *quit)
Definition: dbus-transport.c:165
DBusHandlerResult dbus_return_i32(DBusConnection *connection, DBusMessage *message, int32_t val)
Definition: dbus-provider-interface.c:46
DBusHandlerResult dbus_return_i64(DBusConnection *connection, DBusMessage *message, int64_t val)
Definition: dbus-provider-interface.c:74
void dbus_client_send_provider_change_notifier(DBusConnection *connection, caps_identifier pr_id, const struct object_state_prn *pstate)
Definition: dbus-client-interface.c:807
DBusHandlerResult caps_dbus_client_dispatch(DBusConnection *connection, DBusMessage *message, void *data)
Definition: dbus-client-interface.c:943
static volatile sig_atomic_t quit
Definition: caps-printing-coordinator.c:42
static struct caps_coordinator data
Definition: caps-printing-coordinator.c:83
static caps_identifier pr_id
Definition: caps-printing-test-client.c:37
#define __nonnull(params)
Definition: libcapsbase.h:84
int64_t caps_identifier
Definition: libcapsbase.h:323
Basic API for everything else of the CAPS universe.
struct DBusConnection DBusConnection
Definition: libcapsprovider-local.h:62
Print job progression information.
Definition: printing-coordinator-local.h:104
Print job state information for internal use.
Definition: printing-coordinator-local.h:93
Printer state information for internal use.
Definition: printing-coordinator-local.h:82