1 /* 2 * Copyright (C) 2020 Purism SPC 3 * 4 * SPDX-License-Identifier: GPL-3.0+ 5 */ 6 #pragma once 7 8 #include <glib-object.h> 9 10 G_BEGIN_DECLS 11 12 #define FBD_TYPE_FEEDBACK_BASE (fbd_feedback_base_get_type()) 13 14 G_DECLARE_DERIVABLE_TYPE (FbdFeedbackBase, fbd_feedback_base, FBD, FEEDBACK_BASE, GObject); 15 16 struct _FbdFeedbackBaseClass 17 { 18 GObjectClass parent_class; 19 20 void (*run) (FbdFeedbackBase *self); 21 void (*end) (FbdFeedbackBase *self); 22 gboolean (*is_available) (FbdFeedbackBase *self); 23 }; 24 25 26 const gchar *fbd_feedback_get_event_name (FbdFeedbackBase *self); 27 void fbd_feedback_run (FbdFeedbackBase *self); 28 void fbd_feedback_end (FbdFeedbackBase *self); 29 gboolean fbd_feedback_get_ended (FbdFeedbackBase *self); 30 void fbd_feedback_base_done (FbdFeedbackBase *self); 31 gboolean fbd_feedback_is_available (FbdFeedbackBase *self); 32 33 G_END_DECLS 34