blob: ae7e36ace300948c16bf1d1ba26608678b1fce68 [file] [log] [blame]
/*
* Copyright 2024 Richard Hughes <richard@hughsie.com>
*
* SPDX-License-Identifier: LGPL-2.1-or-later
*/
#pragma once
#include <fwupdplugin.h>
#include "fu-engine-struct.h"
#define FU_TYPE_CLIENT (fu_client_get_type())
G_DECLARE_FINAL_TYPE(FuClient, fu_client, FU, CLIENT, GObject)
FuClient *
fu_client_new(const gchar *sender);
const gchar *
fu_client_get_sender(FuClient *self) G_GNUC_NON_NULL(1);
const gchar *
fu_client_lookup_hint(FuClient *self, const gchar *key) G_GNUC_NON_NULL(1, 2);
void
fu_client_insert_hint(FuClient *self, const gchar *key, const gchar *value)
G_GNUC_NON_NULL(1, 2, 3);
void
fu_client_set_feature_flags(FuClient *self, FwupdFeatureFlags feature_flags) G_GNUC_NON_NULL(1);
FwupdFeatureFlags
fu_client_get_feature_flags(FuClient *self) G_GNUC_NON_NULL(1);
void
fu_client_remove_flag(FuClient *self, FuClientFlags flag) G_GNUC_NON_NULL(1);
gboolean
fu_client_has_flag(FuClient *self, FuClientFlags flag) G_GNUC_WARN_UNUSED_RESULT G_GNUC_NON_NULL(1);