<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:doc="http://www.gtk.org/introspection/doc/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="Gio" version="2.0"/>
  <package name="libfeedback-0.0"/>
  <c:include name="libfeedback.h"/>
  <doc:format name="unknown"/>
  <namespace name="Lfb"
             version="0.0"
             shared-library="libfeedback-0.0.so.0"
             c:identifier-prefixes="Lfb"
             c:symbol-prefixes="lfb">
    <class name="Event"
           c:symbol-prefix="event"
           c:type="LfbEvent"
           parent="GObject.Object"
           glib:type-name="LfbEvent"
           glib:get-type="lfb_event_get_type"
           glib:type-struct="EventClass">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-event.c"
           line="14">An event triggering feedback to the user

#LfbEvent represents an event that should trigger
audio, haptic and/or visual feedback to the user by triggering
feedback on a feedback daemon. Valid event names are specified
in the
[Event naming specification](Event-naming-spec-0.0.0.html).

One event can trigger multiple feedbacks at once (e.g. audio and
haptic feedback). This is determined by the feedback theme in
use (which is not under the appliction's control) and the active
feedback profile (see [func@Lfb.set_feedback_profile].

After initializing the library via [func@Lfb.init] feedback can be
triggered like:

```c
  g_autoptr (GError) err = NULL;
  LfbEvent *event = lfb_event_new ("message-new-instant");
  lfb_event_set_timeout (event, 0);
  if (!lfb_event_trigger_feedback (event, &amp;err))
    g_warning ("Failed to trigger feedback: %s", err-&gt;message);
```

When all feedback for this event has ended the [signal@LfbEvent::feedback-ended]
signal is emitted. If you want to end the feedback ahead of time use
[method@LfbEvent.end_feedback]:

```c
  if (!lfb_event_end_feedback (event, &amp;err))
    g_warning ("Failed to end feedback: %s", err-&gt;message);
```

Since these methods involve DBus calls there are asynchronous variants
available, e.g. [method@LfbEvent.trigger_feedback_async]:

```c
  static void
  on_feedback_triggered (LfbEvent      *event,
                         GAsyncResult  *res,
                         gpointer      unused)
  {
     g_autoptr (GError) err = NULL;
     if (!lfb_event_trigger_feedback_finish (event, res, &amp;err)) {
        g_warning ("Failed to trigger feedback for %s: %s",
                   lfb_event_get_event (event), err-&gt;message);
     }
  }

  static void
  my_function ()
  {
    LfbEvent *event = lfb_event_new ("message-new-instant");
    lfb_event_trigger_feedback_async (event, NULL,
                                     (GAsyncReadyCallback)on_feedback_triggered,
                                     NULL);
  }
```</doc>
      <source-position filename="libfeedback/lfb-event.h" line="55"/>
      <constructor name="new" c:identifier="lfb_event_new">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="438">Creates a new [class@Lfb.Event] based on the given event
name. See [property@Lfb.Event:event] for details.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="57"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="445">The [class@Lfb.Event].</doc>
          <type name="Event" c:type="LfbEvent*"/>
        </return-value>
        <parameters>
          <parameter name="event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="440">The event's name.</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </constructor>
      <method name="end_feedback"
              c:identifier="lfb_event_end_feedback"
              throws="1"
              glib:async-func="end_feedback_async">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="597">Tells the feedback server to end all feedback for the given event as
soon as possible.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="66"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="605">%TRUE if successful. On error, this will return %FALSE and set
         @error.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="599">The event to end feedback for.</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="end_feedback_async"
              c:identifier="lfb_event_end_feedback_async"
              glib:finish-func="end_feedback_finish"
              glib:sync-func="end_feedback">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="649">Tells the feedback server to end all feedback for the given event as
soon as possible.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="67"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="651">The event to end feedback for.</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="652">A #GCancellable to cancel the operation or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="653">A #GAsyncReadyCallback to call when the request is satisfied or %NULL.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="654">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="end_feedback_finish"
              c:identifier="lfb_event_end_feedback_finish"
              throws="1">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="624">Finish an async operation started by lfb_event_end_feedback_async. You
must call this function in the callback to free memory and receive any
errors which occurred.

This does not mean that the feedbacks finished right away. Connect to the
[@signal@LfbEvent::feedback-ended] signal for this.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="71"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="637">%TRUE if ending the feedbacks was successful</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="626">the event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="627">Result object passed to the callback of [method@LfbEvent.end_feedback_async]</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_app_id"
              c:identifier="lfb_event_get_app_id"
              glib:get-property="app-id">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="878">Returns the app-id for this event. If no app-id has been explicitly
set, %NULL is returned. The event uses the app-id returned by
[func@Lfb.get_app_id] in this case.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="81"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="886">The set app-id for this event or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="880">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_end_reason"
              c:identifier="lfb_event_get_end_reason"
              glib:get-property="end-reason">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="756">Get the reason why the feadback ended.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="87"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="762">The reason why feedback ended.</doc>
          <type name="EventEndReason" c:type="LfbEventEndReason"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="758">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_event"
              c:identifier="lfb_event_get_event"
              glib:get-property="event">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="710">Get the event's name according to the event naming spec.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="82"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="716">The event name</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="712">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_feedback_profile"
              c:identifier="lfb_event_get_feedback_profile"
              glib:get-property="feedback-profile">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="796">Gets the set feedback profile. If no profile was set it returns
%NULL. The event uses the system wide profile in this case.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="77"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="803">The set feedback profile to use for this event or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="798">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_important"
              c:identifier="lfb_event_get_important"
              glib:get-property="important">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="834">Gets the set feedback profile. If no profile was set it returns
%NULL. The event uses the system wide profile in this case.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="79"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="841">The set feedback profile to use for this event or %NULL.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="836">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_sound_file"
              c:identifier="lfb_event_get_sound_file"
              glib:get-property="sound-file">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="921">Returns the sound file for this event if set.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="84"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="927">The set sound file for this event or %NULL.</doc>
          <type name="utf8" c:type="const char*"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="923">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_state"
              c:identifier="lfb_event_get_state"
              glib:get-property="state">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="740">Get the current event state (e.g. if triggered feeedback is
currently running.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="86"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="747">The state of the feedback triggered by event.</doc>
          <type name="EventState" c:type="LfbEventState"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="742">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="get_timeout"
              c:identifier="lfb_event_get_timeout"
              glib:get-property="timeout">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="725">Get the currently set timeout.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="75"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="731">The event timeout in milliseconds</doc>
          <type name="gint" c:type="gint"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="727">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_app_id"
              c:identifier="lfb_event_set_app_id"
              glib:set-property="app-id">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="851">Tells the feedback server to use the given application id for
this event when it is submitted. The server might ignore this
request. This can be used by notification daemons to honor per
application settings automatically.

The functions is usually not used by applications.

A value of %NULL (the default) lets the server pick the profile.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="80"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="853">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="854">The application id to use</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_feedback_profile"
              c:identifier="lfb_event_set_feedback_profile"
              glib:set-property="feedback-profile">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="771">Tells the feedback server to use the given feedback profile for
this event when it is submitted. The server might ignore this
request.  Valid profile names and their 'noisiness' are specified
in the [Feedback theme specification](Feedback-theme-spec-0.0.0.html).

A value of %NULL (the default) lets the server pick the profile.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="76"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="773">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="profile" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="774">The feedback profile to use</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_important"
              c:identifier="lfb_event_set_important"
              glib:set-property="important">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="813">Tells the feedback server that the sender deems this to be an
important event. A feedback server might allow the sender to
override the current global feedback level when this is set.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="78"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="815">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="important" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="816">Whether to flag this event as important</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_sound_file"
              c:identifier="lfb_event_set_sound_file"
              glib:set-property="sound-file">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="896">Tells the feedback server to use the given sound file if a sound is
to be played. It will only be used if sound is suitable for the
events feedback level.

A value of %NULL (the default) lets the server pick the sound
based on the event.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="83"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="898">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="sound_file" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="899">The sound file</doc>
            <type name="utf8" c:type="const char*"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_timeout"
              c:identifier="lfb_event_set_timeout"
              glib:set-property="timeout">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="685">Tells the feedback server to end feedback after #timeout seconds.
The value -1 indicates to not set a timeout and let feedbacks stop
on their own while 0 indicates to loop all feedbacks endlessly.
They must be stopped via [method@LfbEvent.end_feedback] in this case.

It is an error to change the timeout after the feedback has been triggered
via [method@LfbEvent.trigger_feedback].</doc>
        <source-position filename="libfeedback/lfb-event.h" line="74"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="687">The event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="688">The timeout</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </method>
      <method name="trigger_feedback"
              c:identifier="lfb_event_trigger_feedback"
              throws="1"
              glib:async-func="trigger_feedback_async">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="474">Tells the feedback server to provide proper feedback for the give
event to the user.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="58"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="482">%TRUE if successful. On error, this will return %FALSE and set
         @error.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="476">The event to trigger feedback for.</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="trigger_feedback_async"
              c:identifier="lfb_event_trigger_feedback_async"
              glib:finish-func="trigger_feedback_finish"
              glib:sync-func="trigger_feedback">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="524">Tells the feedback server to provide proper feedback for the give
event to the user. This is the sync version of
[method@LfbEvent.trigger_feedback].</doc>
        <source-position filename="libfeedback/lfb-event.h" line="59"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="526">The event to trigger feedback for.</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="527">A #GCancellable to cancel the operation or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="2">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="528">A #GAsyncReadyCallback to call when the request is satisfied or %NULL.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="529">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="trigger_feedback_finish"
              c:identifier="lfb_event_trigger_feedback_finish"
              throws="1">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="575">Finish an async operation started by [method@LfbEvent.trigger_feedback_async]. You
must call this function in the callback to free memory and receive any
errors which occurred.</doc>
        <source-position filename="libfeedback/lfb-event.h" line="63"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-event.c"
               line="585">%TRUE if triggering the feedbacks was successful</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="self" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="577">the event</doc>
            <type name="Event" c:type="LfbEvent*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="libfeedback/lfb-event.c"
                 line="578">Result object passed to the callback of [method@LfbEvent.trigger_feedback_async]</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <property name="app-id"
                writable="1"
                transfer-ownership="none"
                setter="set_app_id"
                getter="get_app_id"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="388">The application id to use for the event.
[method@LfbEvent.set_feedback_profile] for details.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="end-reason"
                transfer-ownership="none"
                getter="get_end_reason"
                default-value="LFB_EVENT_END_REASON_NATURAL">
        <type name="EventEndReason"/>
      </property>
      <property name="event"
                writable="1"
                construct-only="1"
                transfer-ownership="none"
                getter="get_event"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="317">The type of event from the Event naming spec, e.g. 'message-new-instant'.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="feedback-profile"
                writable="1"
                transfer-ownership="none"
                setter="set_feedback_profile"
                getter="get_feedback_profile"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="362">The name of the feedback profile to use for this event. See
[method@LfbEvent.set_feedback_profile] for details.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="important"
                writable="1"
                transfer-ownership="none"
                setter="set_important"
                getter="get_important"
                default-value="FALSE">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="375">Whether to flag this event as important.
[method@LfbEvent.set_important] for details.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </property>
      <property name="sound-file"
                writable="1"
                transfer-ownership="none"
                setter="set_sound_file"
                getter="get_sound_file"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="401">A custom sound-file to play. See [method@LfbEvent.set_sound_file]
for details.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <property name="state"
                transfer-ownership="none"
                getter="get_state"
                default-value="LFB_EVENT_STATE_NONE">
        <type name="EventState"/>
      </property>
      <property name="timeout"
                writable="1"
                transfer-ownership="none"
                setter="set_timeout"
                getter="get_timeout"
                default-value="-1">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="330">How long feedback should be provided in seconds. The special value
%-1 uses the natural length of each feedback while %0 plays each feedback
in a loop until ended explicitly via e.g. [method@LfbEvent.end_feedback].</doc>
        <type name="gint" c:type="gint"/>
      </property>
      <glib:signal name="feedback-ended" when="last">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.c"
             line="417">Emitted when all feedbacks triggered by the event have ended.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
      </glib:signal>
    </class>
    <record name="EventClass"
            c:type="LfbEventClass"
            glib:is-gtype-struct-for="Event">
      <source-position filename="libfeedback/lfb-event.h" line="55"/>
      <field name="parent_class">
        <type name="GObject.ObjectClass" c:type="GObjectClass"/>
      </field>
    </record>
    <enumeration name="EventEndReason"
                 glib:type-name="LfbEventEndReason"
                 glib:get-type="lfb_event_end_reason_get_type"
                 c:type="LfbEventEndReason">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-event.h"
           line="35">Enum values used to indicate why the feedbacks for an event ended.</doc>
      <member name="not_found"
              value="-1"
              c:identifier="LFB_EVENT_END_REASON_NOT_FOUND"
              glib:nick="not-found"
              glib:name="LFB_EVENT_END_REASON_NOT_FOUND">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="37">There was no feedback in the current theme for this event
                                 so no feedback was provided to the user.</doc>
      </member>
      <member name="natural"
              value="0"
              c:identifier="LFB_EVENT_END_REASON_NATURAL"
              glib:nick="natural"
              glib:name="LFB_EVENT_END_REASON_NATURAL">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="39">All feedbacks finished playing their natural length</doc>
      </member>
      <member name="expired"
              value="1"
              c:identifier="LFB_EVENT_END_REASON_EXPIRED"
              glib:nick="expired"
              glib:name="LFB_EVENT_END_REASON_EXPIRED">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="40">Feedbacks ran until the set timeout expired</doc>
      </member>
      <member name="explicit"
              value="2"
              c:identifier="LFB_EVENT_END_REASON_EXPLICIT"
              glib:nick="explicit"
              glib:name="LFB_EVENT_END_REASON_EXPLICIT">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="41">The feedbacks were ended explicitly</doc>
      </member>
    </enumeration>
    <enumeration name="EventState"
                 glib:type-name="LfbEventState"
                 glib:get-type="lfb_event_state_get_type"
                 c:type="LfbEventState">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-event.h"
           line="17">Enum values to indicate the current state of the feedbacks
triggered by an event.</doc>
      <member name="errored"
              value="-1"
              c:identifier="LFB_EVENT_STATE_ERRORED"
              glib:nick="errored"
              glib:name="LFB_EVENT_STATE_ERRORED">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="19">An error occurred triggering feedbacks</doc>
      </member>
      <member name="none"
              value="0"
              c:identifier="LFB_EVENT_STATE_NONE"
              glib:nick="none"
              glib:name="LFB_EVENT_STATE_NONE">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="20">No state information yet</doc>
      </member>
      <member name="running"
              value="1"
              c:identifier="LFB_EVENT_STATE_RUNNING"
              glib:nick="running"
              glib:name="LFB_EVENT_STATE_RUNNING">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="21">The feedbacks for this event are currently running</doc>
      </member>
      <member name="ended"
              value="2"
              c:identifier="LFB_EVENT_STATE_ENDED"
              glib:nick="ended"
              glib:name="LFB_EVENT_STATE_ENDED">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-event.h"
             line="22">All feedbacks for this event ended</doc>
      </member>
    </enumeration>
    <function-macro name="GDBUS_FEEDBACK"
                    c:identifier="LFB_GDBUS_FEEDBACK"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="192"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_GET_IFACE"
                    c:identifier="LFB_GDBUS_FEEDBACK_GET_IFACE"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="194"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="21"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_GET_IFACE"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_GET_IFACE"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="23"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_PROXY"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_PROXY"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="87"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_PROXY_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_PROXY_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="88"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_PROXY_GET_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_PROXY_GET_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="89"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_SKELETON"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_SKELETON"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="157"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_SKELETON_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_SKELETON_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="158"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_HAPTIC_SKELETON_GET_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_HAPTIC_SKELETON_GET_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="159"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_PROXY"
                    c:identifier="LFB_GDBUS_FEEDBACK_PROXY"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="314"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_PROXY_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_PROXY_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="315"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_PROXY_GET_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_PROXY_GET_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="316"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_SKELETON"
                    c:identifier="LFB_GDBUS_FEEDBACK_SKELETON"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="384"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_SKELETON_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_SKELETON_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="385"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_FEEDBACK_SKELETON_GET_CLASS"
                    c:identifier="LFB_GDBUS_FEEDBACK_SKELETON_GET_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="386"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="193"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_HAPTIC"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_HAPTIC"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="22"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_HAPTIC_PROXY"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_HAPTIC_PROXY"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="90"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_HAPTIC_PROXY_CLASS"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_HAPTIC_PROXY_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="91"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_HAPTIC_SKELETON"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_HAPTIC_SKELETON"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="160"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_HAPTIC_SKELETON_CLASS"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_HAPTIC_SKELETON_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="161"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_PROXY"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_PROXY"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="317"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_PROXY_CLASS"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_PROXY_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="318"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_SKELETON"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_SKELETON"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="387"/>
      <parameters>
        <parameter name="o">
        </parameter>
      </parameters>
    </function-macro>
    <function-macro name="GDBUS_IS_FEEDBACK_SKELETON_CLASS"
                    c:identifier="LFB_GDBUS_IS_FEEDBACK_SKELETON_CLASS"
                    introspectable="0">
      <source-position filename="data/lfb-gdbus.h" line="388"/>
      <parameters>
        <parameter name="k">
        </parameter>
      </parameters>
    </function-macro>
    <interface name="GdbusFeedback"
               c:symbol-prefix="gdbus_feedback"
               c:type="LfbGdbusFeedback"
               glib:type-name="LfbGdbusFeedback"
               glib:get-type="lfb_gdbus_feedback_get_type"
               glib:type-struct="GdbusFeedbackIface">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1625">Abstract interface type for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt;.</doc>
      <source-position filename="data/lfb-gdbus.h" line="226"/>
      <function name="interface_info"
                c:identifier="lfb_gdbus_feedback_interface_info">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1554">Gets a machine-readable description of the &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt; D-Bus interface.</doc>
        <source-position filename="data/lfb-gdbus.h" line="234"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1559">A #GDBusInterfaceInfo. Do not free.</doc>
          <type name="Gio.DBusInterfaceInfo" c:type="GDBusInterfaceInfo*"/>
        </return-value>
      </function>
      <function name="override_properties"
                c:identifier="lfb_gdbus_feedback_override_properties">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1567">Overrides all #GObject properties in the #LfbGdbusFeedback interface for a concrete class.
The properties are overridden in the order they are defined.</doc>
        <source-position filename="data/lfb-gdbus.h" line="235"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1575">The last property id.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1569">The class structure for a #GObject derived class.</doc>
            <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
          </parameter>
          <parameter name="property_id_begin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1570">The property id to assign to the first overridden property.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="feedback_ended">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1637">Handler for the #LfbGdbusFeedback::feedback-ended signal.</doc>
        <source-position filename="data/lfb-gdbus.h" line="221"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="arg_id" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="arg_reason" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="get_profile"
                      invoker="get_profile"
                      introspectable="0">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1732">Gets the value of the &lt;link linkend="gdbus-property-org-sigxcpu-Feedback.Profile"&gt;"Profile"&lt;/link&gt; D-Bus property.

Since this D-Bus property is both readable and writable, it is meaningful to use this function on both the client- and service-side.

The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use lfb_gdbus_feedback_dup_profile() if on another thread.</doc>
        <source-position filename="data/lfb-gdbus.h" line="219"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1742">The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1734">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="handle_end_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1634">Handler for the #LfbGdbusFeedback::handle-end-feedback signal.</doc>
        <source-position filename="data/lfb-gdbus.h" line="206"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="invocation" transfer-ownership="none">
            <type name="Gio.DBusMethodInvocation"
                  c:type="GDBusMethodInvocation*"/>
          </parameter>
          <parameter name="arg_id" transfer-ownership="none">
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <virtual-method name="handle_trigger_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1635">Handler for the #LfbGdbusFeedback::handle-trigger-feedback signal.</doc>
        <source-position filename="data/lfb-gdbus.h" line="211"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="invocation" transfer-ownership="none">
            <type name="Gio.DBusMethodInvocation"
                  c:type="GDBusMethodInvocation*"/>
          </parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_event" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_hints" transfer-ownership="none">
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
          <parameter name="arg_timeout" transfer-ownership="none">
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="call_end_feedback"
              c:identifier="lfb_gdbus_feedback_call_end_feedback"
              glib:finish-func="call_end_feedback_finish"
              glib:sync-func="call_end_feedback_sync">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1924">Asynchronously invokes the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.EndFeedback"&gt;EndFeedback()&lt;/link&gt; D-Bus method on @proxy.
When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_call_end_feedback_finish() to get the result of the operation.

See lfb_gdbus_feedback_call_end_feedback_sync() for the synchronous, blocking version of this method.</doc>
        <source-position filename="data/lfb-gdbus.h" line="285"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1926">A #LfbGdbusFeedbackProxy.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="arg_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1927">Argument to pass with the method invocation.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1928">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="3">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1929">A #GAsyncReadyCallback to call when the request is satisfied or %NULL.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1930">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_end_feedback_finish"
              c:identifier="lfb_gdbus_feedback_call_end_feedback_finish"
              throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1957">Finishes an operation started with lfb_gdbus_feedback_call_end_feedback().</doc>
        <source-position filename="data/lfb-gdbus.h" line="292"/>
        <return-value transfer-ownership="none" skip="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1965">%TRUE if the call succeeded, %FALSE if @error is set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1959">A #LfbGdbusFeedbackProxy.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1960">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_call_end_feedback().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_end_feedback_sync"
              c:identifier="lfb_gdbus_feedback_call_end_feedback_sync"
              throws="1"
              glib:async-func="call_end_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1984">Synchronously invokes the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.EndFeedback"&gt;EndFeedback()&lt;/link&gt; D-Bus method on @proxy. The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_call_end_feedback() for the asynchronous version of this method.</doc>
        <source-position filename="data/lfb-gdbus.h" line="297"/>
        <return-value transfer-ownership="none" skip="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1995">%TRUE if the call succeeded, %FALSE if @error is set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1986">A #LfbGdbusFeedbackProxy.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="arg_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1987">Argument to pass with the method invocation.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1988">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_trigger_feedback"
              c:identifier="lfb_gdbus_feedback_call_trigger_feedback"
              glib:finish-func="call_trigger_feedback_finish"
              glib:sync-func="call_trigger_feedback_sync">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1802">Asynchronously invokes the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.TriggerFeedback"&gt;TriggerFeedback()&lt;/link&gt; D-Bus method on @proxy.
When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_call_trigger_feedback_finish() to get the result of the operation.

See lfb_gdbus_feedback_call_trigger_feedback_sync() for the synchronous, blocking version of this method.</doc>
        <source-position filename="data/lfb-gdbus.h" line="259"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1804">A #LfbGdbusFeedbackProxy.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1805">Argument to pass with the method invocation.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1806">Argument to pass with the method invocation.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_hints" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1807">Argument to pass with the method invocation.</doc>
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
          <parameter name="arg_timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1808">Argument to pass with the method invocation.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1809">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="6">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1810">A #GAsyncReadyCallback to call when the request is satisfied or %NULL.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1811">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_trigger_feedback_finish"
              c:identifier="lfb_gdbus_feedback_call_trigger_feedback_finish"
              throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1844">Finishes an operation started with lfb_gdbus_feedback_call_trigger_feedback().</doc>
        <source-position filename="data/lfb-gdbus.h" line="269"/>
        <return-value transfer-ownership="none" skip="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1853">%TRUE if the call succeeded, %FALSE if @error is set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1846">A #LfbGdbusFeedbackProxy.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="out_id"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1847">Return location for return parameter or %NULL to ignore.</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1848">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_call_trigger_feedback().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_trigger_feedback_sync"
              c:identifier="lfb_gdbus_feedback_call_trigger_feedback_sync"
              throws="1"
              glib:async-func="call_trigger_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1874">Synchronously invokes the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.TriggerFeedback"&gt;TriggerFeedback()&lt;/link&gt; D-Bus method on @proxy. The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_call_trigger_feedback() for the asynchronous version of this method.</doc>
        <source-position filename="data/lfb-gdbus.h" line="275"/>
        <return-value transfer-ownership="none" skip="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1889">%TRUE if the call succeeded, %FALSE if @error is set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1876">A #LfbGdbusFeedbackProxy.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1877">Argument to pass with the method invocation.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1878">Argument to pass with the method invocation.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_hints" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1879">Argument to pass with the method invocation.</doc>
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
          <parameter name="arg_timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1880">Argument to pass with the method invocation.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
          <parameter name="out_id"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1881">Return location for return parameter or %NULL to ignore.</doc>
            <type name="guint" c:type="guint*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1882">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="complete_end_feedback"
              c:identifier="lfb_gdbus_feedback_complete_end_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2043">Helper function used in service implementations to finish handling invocations of the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.EndFeedback"&gt;EndFeedback()&lt;/link&gt; D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.

This method will free @invocation, you cannot use it afterwards.</doc>
        <source-position filename="data/lfb-gdbus.h" line="244"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2045">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="invocation" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2046">A #GDBusMethodInvocation.</doc>
            <type name="Gio.DBusMethodInvocation"
                  c:type="GDBusMethodInvocation*"/>
          </parameter>
        </parameters>
      </method>
      <method name="complete_trigger_feedback"
              c:identifier="lfb_gdbus_feedback_complete_trigger_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2022">Helper function used in service implementations to finish handling invocations of the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.TriggerFeedback"&gt;TriggerFeedback()&lt;/link&gt; D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.

This method will free @invocation, you cannot use it afterwards.</doc>
        <source-position filename="data/lfb-gdbus.h" line="239"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2024">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="invocation" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2025">A #GDBusMethodInvocation.</doc>
            <type name="Gio.DBusMethodInvocation"
                  c:type="GDBusMethodInvocation*"/>
          </parameter>
          <parameter name="id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2026">Parameter to return.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="dup_profile"
              c:identifier="lfb_gdbus_feedback_dup_profile"
              introspectable="0">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1752">Gets a copy of the &lt;link linkend="gdbus-property-org-sigxcpu-Feedback.Profile"&gt;"Profile"&lt;/link&gt; D-Bus property.

Since this D-Bus property is both readable and writable, it is meaningful to use this function on both the client- and service-side.</doc>
        <source-position filename="data/lfb-gdbus.h" line="307"/>
        <return-value transfer-ownership="full" nullable="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1760">The property value or %NULL if the property is not set. The returned value should be freed with g_free().</doc>
          <type name="utf8" c:type="gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1754">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="emit_feedback_ended"
              c:identifier="lfb_gdbus_feedback_emit_feedback_ended">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1785">Emits the &lt;link linkend="gdbus-signal-org-sigxcpu-Feedback.FeedbackEnded"&gt;"FeedbackEnded"&lt;/link&gt; D-Bus signal.</doc>
        <source-position filename="data/lfb-gdbus.h" line="251"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1787">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="arg_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1788">Argument to pass with the signal.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="arg_reason" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1789">Argument to pass with the signal.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </method>
      <method name="get_profile"
              c:identifier="lfb_gdbus_feedback_get_profile"
              glib:get-property="profile"
              introspectable="0">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1732">Gets the value of the &lt;link linkend="gdbus-property-org-sigxcpu-Feedback.Profile"&gt;"Profile"&lt;/link&gt; D-Bus property.

Since this D-Bus property is both readable and writable, it is meaningful to use this function on both the client- and service-side.

The returned value is only valid until the property changes so on the client-side it is only safe to use this function on the thread where @object was constructed. Use lfb_gdbus_feedback_dup_profile() if on another thread.</doc>
        <source-position filename="data/lfb-gdbus.h" line="306"/>
        <return-value transfer-ownership="none" nullable="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1742">The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object.</doc>
          <type name="utf8" c:type="const gchar*"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1734">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_profile"
              c:identifier="lfb_gdbus_feedback_set_profile"
              glib:set-property="profile"
              introspectable="0">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1770">Sets the &lt;link linkend="gdbus-property-org-sigxcpu-Feedback.Profile"&gt;"Profile"&lt;/link&gt; D-Bus property to @value.

Since this D-Bus property is both readable and writable, it is meaningful to use this function on both the client- and service-side.</doc>
        <source-position filename="data/lfb-gdbus.h" line="308"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1772">A #LfbGdbusFeedback.</doc>
            <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
          </instance-parameter>
          <parameter name="value" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1773">The value to set.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
        </parameters>
      </method>
      <property name="profile"
                writable="1"
                transfer-ownership="none"
                setter="set_profile"
                getter="get_profile"
                default-value="NULL">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1721">Represents the D-Bus property &lt;link linkend="gdbus-property-org-sigxcpu-Feedback.Profile"&gt;"Profile"&lt;/link&gt;.

Since the D-Bus property for this #GObject property is both readable and writable, it is meaningful to both read from it and write to it on both the service- and client-side.</doc>
        <type name="utf8" c:type="gchar*"/>
      </property>
      <glib:signal name="feedback-ended" when="last">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1699">On the client-side, this signal is emitted whenever the D-Bus signal &lt;link linkend="gdbus-signal-org-sigxcpu-Feedback.FeedbackEnded"&gt;"FeedbackEnded"&lt;/link&gt; is received.

On the service-side, this signal can be used with e.g. g_signal_emit_by_name() to make the object emit the D-Bus signal.</doc>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="arg_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1702">Argument.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
          <parameter name="arg_reason" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1703">Argument.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="handle-end-feedback" when="last">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1675">Signal emitted when a remote caller is invoking the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.EndFeedback"&gt;EndFeedback()&lt;/link&gt; D-Bus method.

If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call lfb_gdbus_feedback_complete_end_feedback() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1685">%G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="invocation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1678">A #GDBusMethodInvocation.</doc>
            <type name="Gio.DBusMethodInvocation"/>
          </parameter>
          <parameter name="arg_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1679">Argument passed by remote caller.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </glib:signal>
      <glib:signal name="handle-trigger-feedback" when="last">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1649">Signal emitted when a remote caller is invoking the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback.TriggerFeedback"&gt;TriggerFeedback()&lt;/link&gt; D-Bus method.

If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call lfb_gdbus_feedback_complete_trigger_feedback() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1662">%G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="invocation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1652">A #GDBusMethodInvocation.</doc>
            <type name="Gio.DBusMethodInvocation"/>
          </parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1653">Argument passed by remote caller.</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="arg_event" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1654">Argument passed by remote caller.</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="arg_hints" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1655">Argument passed by remote caller.</doc>
            <type name="GLib.Variant"/>
          </parameter>
          <parameter name="arg_timeout" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1656">Argument passed by remote caller.</doc>
            <type name="gint" c:type="gint"/>
          </parameter>
        </parameters>
      </glib:signal>
    </interface>
    <interface name="GdbusFeedbackHaptic"
               c:symbol-prefix="gdbus_feedback_haptic"
               c:type="LfbGdbusFeedbackHaptic"
               glib:type-name="LfbGdbusFeedbackHaptic"
               glib:get-type="lfb_gdbus_feedback_haptic_get_type"
               glib:type-struct="GdbusFeedbackHapticIface">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="521">Abstract interface type for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt;.</doc>
      <source-position filename="data/lfb-gdbus.h" line="39"/>
      <function name="interface_info"
                c:identifier="lfb_gdbus_feedback_haptic_interface_info">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="477">Gets a machine-readable description of the &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt; D-Bus interface.</doc>
        <source-position filename="data/lfb-gdbus.h" line="47"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="482">A #GDBusInterfaceInfo. Do not free.</doc>
          <type name="Gio.DBusInterfaceInfo" c:type="GDBusInterfaceInfo*"/>
        </return-value>
      </function>
      <function name="override_properties"
                c:identifier="lfb_gdbus_feedback_haptic_override_properties">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="490">Overrides all #GObject properties in the #LfbGdbusFeedbackHaptic interface for a concrete class.
The properties are overridden in the order they are defined.</doc>
        <source-position filename="data/lfb-gdbus.h" line="48"/>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="498">The last property id.</doc>
          <type name="guint" c:type="guint"/>
        </return-value>
        <parameters>
          <parameter name="klass" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="492">The class structure for a #GObject derived class.</doc>
            <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
          </parameter>
          <parameter name="property_id_begin" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="493">The property id to assign to the first overridden property.</doc>
            <type name="guint" c:type="guint"/>
          </parameter>
        </parameters>
      </function>
      <virtual-method name="handle_vibrate">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="530">Handler for the #LfbGdbusFeedbackHaptic::handle-vibrate signal.</doc>
        <source-position filename="data/lfb-gdbus.h" line="33"/>
        <return-value transfer-ownership="none">
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <type name="GdbusFeedbackHaptic" c:type="LfbGdbusFeedbackHaptic*"/>
          </instance-parameter>
          <parameter name="invocation" transfer-ownership="none">
            <type name="Gio.DBusMethodInvocation"
                  c:type="GDBusMethodInvocation*"/>
          </parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_pattern" transfer-ownership="none">
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
        </parameters>
      </virtual-method>
      <method name="call_vibrate"
              c:identifier="lfb_gdbus_feedback_haptic_call_vibrate"
              glib:finish-func="call_vibrate_finish"
              glib:sync-func="call_vibrate_sync">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="568">Asynchronously invokes the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback-Haptic.Vibrate"&gt;Vibrate()&lt;/link&gt; D-Bus method on @proxy.
When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_haptic_call_vibrate_finish() to get the result of the operation.

See lfb_gdbus_feedback_haptic_call_vibrate_sync() for the synchronous, blocking version of this method.</doc>
        <source-position filename="data/lfb-gdbus.h" line="60"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="570">A #LfbGdbusFeedbackHapticProxy.</doc>
            <type name="GdbusFeedbackHaptic" c:type="LfbGdbusFeedbackHaptic*"/>
          </instance-parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="571">Argument to pass with the method invocation.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="572">Argument to pass with the method invocation.</doc>
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="573">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="4">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="574">A #GAsyncReadyCallback to call when the request is satisfied or %NULL.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="575">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_vibrate_finish"
              c:identifier="lfb_gdbus_feedback_haptic_call_vibrate_finish"
              throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="604">Finishes an operation started with lfb_gdbus_feedback_haptic_call_vibrate().</doc>
        <source-position filename="data/lfb-gdbus.h" line="68"/>
        <return-value transfer-ownership="none" skip="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="613">%TRUE if the call succeeded, %FALSE if @error is set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="606">A #LfbGdbusFeedbackHapticProxy.</doc>
            <type name="GdbusFeedbackHaptic" c:type="LfbGdbusFeedbackHaptic*"/>
          </instance-parameter>
          <parameter name="out_success"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="607">Return location for return parameter or %NULL to ignore.</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="608">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_haptic_call_vibrate().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </method>
      <method name="call_vibrate_sync"
              c:identifier="lfb_gdbus_feedback_haptic_call_vibrate_sync"
              throws="1"
              glib:async-func="call_vibrate">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="634">Synchronously invokes the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback-Haptic.Vibrate"&gt;Vibrate()&lt;/link&gt; D-Bus method on @proxy. The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_haptic_call_vibrate() for the asynchronous version of this method.</doc>
        <source-position filename="data/lfb-gdbus.h" line="74"/>
        <return-value transfer-ownership="none" skip="1">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="647">%TRUE if the call succeeded, %FALSE if @error is set.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <instance-parameter name="proxy" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="636">A #LfbGdbusFeedbackHapticProxy.</doc>
            <type name="GdbusFeedbackHaptic" c:type="LfbGdbusFeedbackHaptic*"/>
          </instance-parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="637">Argument to pass with the method invocation.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="arg_pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="638">Argument to pass with the method invocation.</doc>
            <type name="GLib.Variant" c:type="GVariant*"/>
          </parameter>
          <parameter name="out_success"
                     direction="out"
                     caller-allocates="0"
                     transfer-ownership="full"
                     optional="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="639">Return location for return parameter or %NULL to ignore.</doc>
            <type name="gboolean" c:type="gboolean*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="640">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </method>
      <method name="complete_vibrate"
              c:identifier="lfb_gdbus_feedback_haptic_complete_vibrate">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="678">Helper function used in service implementations to finish handling invocations of the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback-Haptic.Vibrate"&gt;Vibrate()&lt;/link&gt; D-Bus method. If you instead want to finish handling an invocation by returning an error, use g_dbus_method_invocation_return_error() or similar.

This method will free @invocation, you cannot use it afterwards.</doc>
        <source-position filename="data/lfb-gdbus.h" line="52"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="object" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="680">A #LfbGdbusFeedbackHaptic.</doc>
            <type name="GdbusFeedbackHaptic" c:type="LfbGdbusFeedbackHaptic*"/>
          </instance-parameter>
          <parameter name="invocation" transfer-ownership="full">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="681">A #GDBusMethodInvocation.</doc>
            <type name="Gio.DBusMethodInvocation"
                  c:type="GDBusMethodInvocation*"/>
          </parameter>
          <parameter name="success" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="682">Parameter to return.</doc>
            <type name="gboolean" c:type="gboolean"/>
          </parameter>
        </parameters>
      </method>
      <glib:signal name="handle-vibrate" when="last">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="542">Signal emitted when a remote caller is invoking the &lt;link linkend="gdbus-method-org-sigxcpu-Feedback-Haptic.Vibrate"&gt;Vibrate()&lt;/link&gt; D-Bus method.

If a signal handler returns %TRUE, it means the signal handler will handle the invocation (e.g. take a reference to @invocation and eventually call lfb_gdbus_feedback_haptic_complete_vibrate() or e.g. g_dbus_method_invocation_return_error() on it) and no other signal handlers will run. If no signal handler handles the invocation, the %G_DBUS_ERROR_UNKNOWN_METHOD error is returned.</doc>
        <return-value transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="553">%G_DBUS_METHOD_INVOCATION_HANDLED or %TRUE if the invocation was handled, %G_DBUS_METHOD_INVOCATION_UNHANDLED or %FALSE to let other signal handlers run.</doc>
          <type name="gboolean" c:type="gboolean"/>
        </return-value>
        <parameters>
          <parameter name="invocation" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="545">A #GDBusMethodInvocation.</doc>
            <type name="Gio.DBusMethodInvocation"/>
          </parameter>
          <parameter name="arg_app_id" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="546">Argument passed by remote caller.</doc>
            <type name="utf8" c:type="gchar*"/>
          </parameter>
          <parameter name="arg_pattern" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="547">Argument passed by remote caller.</doc>
            <type name="GLib.Variant"/>
          </parameter>
        </parameters>
      </glib:signal>
    </interface>
    <record name="GdbusFeedbackHapticIface"
            c:type="LfbGdbusFeedbackHapticIface"
            glib:is-gtype-struct-for="GdbusFeedbackHaptic">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="527">Virtual table for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt;.</doc>
      <source-position filename="data/lfb-gdbus.h" line="39"/>
      <field name="parent_iface">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="529">The parent interface.</doc>
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="handle_vibrate">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="530">Handler for the #LfbGdbusFeedbackHaptic::handle-vibrate signal.</doc>
        <callback name="handle_vibrate">
          <source-position filename="data/lfb-gdbus.h" line="33"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="object" transfer-ownership="none">
              <type name="GdbusFeedbackHaptic"
                    c:type="LfbGdbusFeedbackHaptic*"/>
            </parameter>
            <parameter name="invocation" transfer-ownership="none">
              <type name="Gio.DBusMethodInvocation"
                    c:type="GDBusMethodInvocation*"/>
            </parameter>
            <parameter name="arg_app_id" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="arg_pattern" transfer-ownership="none">
              <type name="GLib.Variant" c:type="GVariant*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="GdbusFeedbackHapticProxy"
           c:symbol-prefix="gdbus_feedback_haptic_proxy"
           c:type="LfbGdbusFeedbackHapticProxy"
           parent="Gio.DBusProxy"
           glib:type-name="LfbGdbusFeedbackHapticProxy"
           glib:get-type="lfb_gdbus_feedback_haptic_proxy_get_type"
           glib:type-struct="GdbusFeedbackHapticProxyClass">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="701">The #LfbGdbusFeedbackHapticProxy structure contains only private data and should only be accessed using the provided API.</doc>
      <source-position filename="data/lfb-gdbus.h" line="107"/>
      <implements name="Gio.AsyncInitable"/>
      <implements name="Gio.DBusInterface"/>
      <implements name="Gio.Initable"/>
      <implements name="GdbusFeedbackHaptic"/>
      <constructor name="new_finish"
                   c:identifier="lfb_gdbus_feedback_haptic_proxy_new_finish"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="892">Finishes an operation started with lfb_gdbus_feedback_haptic_proxy_new().</doc>
        <source-position filename="data/lfb-gdbus.h" line="123"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="899">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackHapticProxy"
                c:type="LfbGdbusFeedbackHaptic*"/>
        </return-value>
        <parameters>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="894">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_haptic_proxy_new().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_bus_finish"
                   c:identifier="lfb_gdbus_feedback_haptic_proxy_new_for_bus_finish"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="982">Finishes an operation started with lfb_gdbus_feedback_haptic_proxy_new_for_bus().</doc>
        <source-position filename="data/lfb-gdbus.h" line="142"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="989">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackHapticProxy"
                c:type="LfbGdbusFeedbackHaptic*"/>
        </return-value>
        <parameters>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="984">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_haptic_proxy_new_for_bus().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_bus_sync"
                   c:identifier="lfb_gdbus_feedback_haptic_proxy_new_for_bus_sync"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1007">Like lfb_gdbus_feedback_haptic_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.

The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_haptic_proxy_new_for_bus() for the asynchronous version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="145"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1022">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackHapticProxy"
                c:type="LfbGdbusFeedbackHaptic*"/>
        </return-value>
        <parameters>
          <parameter name="bus_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1009">A #GBusType.</doc>
            <type name="Gio.BusType" c:type="GBusType"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1010">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1011">A bus name (well-known or unique).</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1012">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1013">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_sync"
                   c:identifier="lfb_gdbus_feedback_haptic_proxy_new_sync"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="917">Synchronously creates a proxy for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt;. See g_dbus_proxy_new_sync() for more details.

The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_haptic_proxy_new() for the asynchronous version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="126"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="932">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackHapticProxy"
                c:type="LfbGdbusFeedbackHaptic*"/>
        </return-value>
        <parameters>
          <parameter name="connection" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="919">A #GDBusConnection.</doc>
            <type name="Gio.DBusConnection" c:type="GDBusConnection*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="920">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="921">A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="922">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="923">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="new"
                c:identifier="lfb_gdbus_feedback_haptic_proxy_new"
                glib:finish-func="new_finish">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="862">Asynchronously creates a proxy for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt;. See g_dbus_proxy_new() for more details.

When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_haptic_proxy_new_finish() to get the result of the operation.

See lfb_gdbus_feedback_haptic_proxy_new_sync() for the synchronous, blocking version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="115"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="connection" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="864">A #GDBusConnection.</doc>
            <type name="Gio.DBusConnection" c:type="GDBusConnection*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="865">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="866">A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="867">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="868">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="6">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="869">A #GAsyncReadyCallback to call when the request is satisfied.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="870">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_for_bus"
                c:identifier="lfb_gdbus_feedback_haptic_proxy_new_for_bus"
                glib:finish-func="new_for_bus_finish">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="952">Like lfb_gdbus_feedback_haptic_proxy_new() but takes a #GBusType instead of a #GDBusConnection.

When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_haptic_proxy_new_for_bus_finish() to get the result of the operation.

See lfb_gdbus_feedback_haptic_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="134"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="bus_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="954">A #GBusType.</doc>
            <type name="Gio.BusType" c:type="GBusType"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="955">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="956">A bus name (well-known or unique).</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="957">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="958">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="6">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="959">A #GAsyncReadyCallback to call when the request is satisfied.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="960">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <field name="parent_instance" readable="0" private="1">
        <type name="Gio.DBusProxy" c:type="GDBusProxy"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="GdbusFeedbackHapticProxyPrivate"
              c:type="LfbGdbusFeedbackHapticProxyPrivate*"/>
      </field>
    </class>
    <record name="GdbusFeedbackHapticProxyClass"
            c:type="LfbGdbusFeedbackHapticProxyClass"
            glib:is-gtype-struct-for="GdbusFeedbackHapticProxy">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="707">Class structure for #LfbGdbusFeedbackHapticProxy.</doc>
      <source-position filename="data/lfb-gdbus.h" line="107"/>
      <field name="parent_class">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="709">The parent class.</doc>
        <type name="Gio.DBusProxyClass" c:type="GDBusProxyClass"/>
      </field>
    </record>
    <record name="GdbusFeedbackHapticProxyPrivate"
            c:type="LfbGdbusFeedbackHapticProxyPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="data/lfb-gdbus.h" line="95"/>
    </record>
    <class name="GdbusFeedbackHapticSkeleton"
           c:symbol-prefix="gdbus_feedback_haptic_skeleton"
           c:type="LfbGdbusFeedbackHapticSkeleton"
           parent="Gio.DBusInterfaceSkeleton"
           glib:type-name="LfbGdbusFeedbackHapticSkeleton"
           glib:get-type="lfb_gdbus_feedback_haptic_skeleton_get_type"
           glib:type-struct="GdbusFeedbackHapticSkeletonClass">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1044">The #LfbGdbusFeedbackHapticSkeleton structure contains only private data and should only be accessed using the provided API.</doc>
      <source-position filename="data/lfb-gdbus.h" line="177"/>
      <implements name="Gio.DBusInterface"/>
      <implements name="GdbusFeedbackHaptic"/>
      <constructor name="new"
                   c:identifier="lfb_gdbus_feedback_haptic_skeleton_new">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1319">Creates a skeleton object for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt;.</doc>
        <source-position filename="data/lfb-gdbus.h" line="185"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1324">The skeleton object.</doc>
          <type name="GdbusFeedbackHapticSkeleton"
                c:type="LfbGdbusFeedbackHaptic*"/>
        </return-value>
      </constructor>
      <field name="parent_instance" readable="0" private="1">
        <type name="Gio.DBusInterfaceSkeleton"
              c:type="GDBusInterfaceSkeleton"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="GdbusFeedbackHapticSkeletonPrivate"
              c:type="LfbGdbusFeedbackHapticSkeletonPrivate*"/>
      </field>
    </class>
    <record name="GdbusFeedbackHapticSkeletonClass"
            c:type="LfbGdbusFeedbackHapticSkeletonClass"
            glib:is-gtype-struct-for="GdbusFeedbackHapticSkeleton">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1050">Class structure for #LfbGdbusFeedbackHapticSkeleton.</doc>
      <source-position filename="data/lfb-gdbus.h" line="177"/>
      <field name="parent_class">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1052">The parent class.</doc>
        <type name="Gio.DBusInterfaceSkeletonClass"
              c:type="GDBusInterfaceSkeletonClass"/>
      </field>
    </record>
    <record name="GdbusFeedbackHapticSkeletonPrivate"
            c:type="LfbGdbusFeedbackHapticSkeletonPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="data/lfb-gdbus.h" line="165"/>
    </record>
    <record name="GdbusFeedbackIface"
            c:type="LfbGdbusFeedbackIface"
            glib:is-gtype-struct-for="GdbusFeedback">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1631">Virtual table for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt;.</doc>
      <source-position filename="data/lfb-gdbus.h" line="226"/>
      <field name="parent_iface">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1633">The parent interface.</doc>
        <type name="GObject.TypeInterface" c:type="GTypeInterface"/>
      </field>
      <field name="handle_end_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1634">Handler for the #LfbGdbusFeedback::handle-end-feedback signal.</doc>
        <callback name="handle_end_feedback">
          <source-position filename="data/lfb-gdbus.h" line="206"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="object" transfer-ownership="none">
              <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
            </parameter>
            <parameter name="invocation" transfer-ownership="none">
              <type name="Gio.DBusMethodInvocation"
                    c:type="GDBusMethodInvocation*"/>
            </parameter>
            <parameter name="arg_id" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="handle_trigger_feedback">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1635">Handler for the #LfbGdbusFeedback::handle-trigger-feedback signal.</doc>
        <callback name="handle_trigger_feedback">
          <source-position filename="data/lfb-gdbus.h" line="211"/>
          <return-value transfer-ownership="none">
            <type name="gboolean" c:type="gboolean"/>
          </return-value>
          <parameters>
            <parameter name="object" transfer-ownership="none">
              <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
            </parameter>
            <parameter name="invocation" transfer-ownership="none">
              <type name="Gio.DBusMethodInvocation"
                    c:type="GDBusMethodInvocation*"/>
            </parameter>
            <parameter name="arg_app_id" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="arg_event" transfer-ownership="none">
              <type name="utf8" c:type="const gchar*"/>
            </parameter>
            <parameter name="arg_hints" transfer-ownership="none">
              <type name="GLib.Variant" c:type="GVariant*"/>
            </parameter>
            <parameter name="arg_timeout" transfer-ownership="none">
              <type name="gint" c:type="gint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="get_profile">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1636">Getter for the #LfbGdbusFeedback:profile property.</doc>
        <callback name="get_profile">
          <source-position filename="data/lfb-gdbus.h" line="219"/>
          <return-value transfer-ownership="none" nullable="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="1742">The property value or %NULL if the property is not set. Do not free the returned value, it belongs to @object.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </return-value>
          <parameters>
            <parameter name="object" transfer-ownership="none">
              <doc xml:space="preserve"
                   filename="data/lfb-gdbus.c"
                   line="1734">A #LfbGdbusFeedback.</doc>
              <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
            </parameter>
          </parameters>
        </callback>
      </field>
      <field name="feedback_ended">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1637">Handler for the #LfbGdbusFeedback::feedback-ended signal.</doc>
        <callback name="feedback_ended">
          <source-position filename="data/lfb-gdbus.h" line="221"/>
          <return-value transfer-ownership="none">
            <type name="none" c:type="void"/>
          </return-value>
          <parameters>
            <parameter name="object" transfer-ownership="none">
              <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
            </parameter>
            <parameter name="arg_id" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
            <parameter name="arg_reason" transfer-ownership="none">
              <type name="guint" c:type="guint"/>
            </parameter>
          </parameters>
        </callback>
      </field>
    </record>
    <class name="GdbusFeedbackProxy"
           c:symbol-prefix="gdbus_feedback_proxy"
           c:type="LfbGdbusFeedbackProxy"
           parent="Gio.DBusProxy"
           glib:type-name="LfbGdbusFeedbackProxy"
           glib:get-type="lfb_gdbus_feedback_proxy_get_type"
           glib:type-struct="GdbusFeedbackProxyClass">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="2063">The #LfbGdbusFeedbackProxy structure contains only private data and should only be accessed using the provided API.</doc>
      <source-position filename="data/lfb-gdbus.h" line="334"/>
      <implements name="Gio.AsyncInitable"/>
      <implements name="Gio.DBusInterface"/>
      <implements name="Gio.Initable"/>
      <implements name="GdbusFeedback"/>
      <constructor name="new_finish"
                   c:identifier="lfb_gdbus_feedback_proxy_new_finish"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2323">Finishes an operation started with lfb_gdbus_feedback_proxy_new().</doc>
        <source-position filename="data/lfb-gdbus.h" line="350"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="2330">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackProxy" c:type="LfbGdbusFeedback*"/>
        </return-value>
        <parameters>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2325">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_proxy_new().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_bus_finish"
                   c:identifier="lfb_gdbus_feedback_proxy_new_for_bus_finish"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2413">Finishes an operation started with lfb_gdbus_feedback_proxy_new_for_bus().</doc>
        <source-position filename="data/lfb-gdbus.h" line="369"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="2420">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackProxy" c:type="LfbGdbusFeedback*"/>
        </return-value>
        <parameters>
          <parameter name="res" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2415">The #GAsyncResult obtained from the #GAsyncReadyCallback passed to lfb_gdbus_feedback_proxy_new_for_bus().</doc>
            <type name="Gio.AsyncResult" c:type="GAsyncResult*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_for_bus_sync"
                   c:identifier="lfb_gdbus_feedback_proxy_new_for_bus_sync"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2438">Like lfb_gdbus_feedback_proxy_new_sync() but takes a #GBusType instead of a #GDBusConnection.

The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_proxy_new_for_bus() for the asynchronous version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="372"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="2453">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackProxy" c:type="LfbGdbusFeedback*"/>
        </return-value>
        <parameters>
          <parameter name="bus_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2440">A #GBusType.</doc>
            <type name="Gio.BusType" c:type="GBusType"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2441">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2442">A bus name (well-known or unique).</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2443">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2444">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <constructor name="new_sync"
                   c:identifier="lfb_gdbus_feedback_proxy_new_sync"
                   throws="1">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2348">Synchronously creates a proxy for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt;. See g_dbus_proxy_new_sync() for more details.

The calling thread is blocked until a reply is received.

See lfb_gdbus_feedback_proxy_new() for the asynchronous version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="353"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="2363">The constructed proxy object or %NULL if @error is set.</doc>
          <type name="GdbusFeedbackProxy" c:type="LfbGdbusFeedback*"/>
        </return-value>
        <parameters>
          <parameter name="connection" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2350">A #GDBusConnection.</doc>
            <type name="Gio.DBusConnection" c:type="GDBusConnection*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2351">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2352">A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2353">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2354">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
        </parameters>
      </constructor>
      <function name="new"
                c:identifier="lfb_gdbus_feedback_proxy_new"
                glib:finish-func="new_finish">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2293">Asynchronously creates a proxy for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt;. See g_dbus_proxy_new() for more details.

When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_proxy_new_finish() to get the result of the operation.

See lfb_gdbus_feedback_proxy_new_sync() for the synchronous, blocking version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="342"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="connection" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2295">A #GDBusConnection.</doc>
            <type name="Gio.DBusConnection" c:type="GDBusConnection*"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2296">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2297">A bus name (well-known or unique) or %NULL if @connection is not a message bus connection.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2298">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2299">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="6">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2300">A #GAsyncReadyCallback to call when the request is satisfied.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2301">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <function name="new_for_bus"
                c:identifier="lfb_gdbus_feedback_proxy_new_for_bus"
                glib:finish-func="new_for_bus_finish">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2383">Like lfb_gdbus_feedback_proxy_new() but takes a #GBusType instead of a #GDBusConnection.

When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from (see g_main_context_push_thread_default()).
You can then call lfb_gdbus_feedback_proxy_new_for_bus_finish() to get the result of the operation.

See lfb_gdbus_feedback_proxy_new_for_bus_sync() for the synchronous, blocking version of this constructor.</doc>
        <source-position filename="data/lfb-gdbus.h" line="361"/>
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <parameter name="bus_type" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2385">A #GBusType.</doc>
            <type name="Gio.BusType" c:type="GBusType"/>
          </parameter>
          <parameter name="flags" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2386">Flags from the #GDBusProxyFlags enumeration.</doc>
            <type name="Gio.DBusProxyFlags" c:type="GDBusProxyFlags"/>
          </parameter>
          <parameter name="name" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2387">A bus name (well-known or unique).</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="object_path" transfer-ownership="none">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2388">An object path.</doc>
            <type name="utf8" c:type="const gchar*"/>
          </parameter>
          <parameter name="cancellable"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2389">A #GCancellable or %NULL.</doc>
            <type name="Gio.Cancellable" c:type="GCancellable*"/>
          </parameter>
          <parameter name="callback"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1"
                     scope="async"
                     closure="6">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2390">A #GAsyncReadyCallback to call when the request is satisfied.</doc>
            <type name="Gio.AsyncReadyCallback" c:type="GAsyncReadyCallback"/>
          </parameter>
          <parameter name="user_data"
                     transfer-ownership="none"
                     nullable="1"
                     allow-none="1">
            <doc xml:space="preserve"
                 filename="data/lfb-gdbus.c"
                 line="2391">User data to pass to @callback.</doc>
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
        </parameters>
      </function>
      <field name="parent_instance" readable="0" private="1">
        <type name="Gio.DBusProxy" c:type="GDBusProxy"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="GdbusFeedbackProxyPrivate"
              c:type="LfbGdbusFeedbackProxyPrivate*"/>
      </field>
    </class>
    <record name="GdbusFeedbackProxyClass"
            c:type="LfbGdbusFeedbackProxyClass"
            glib:is-gtype-struct-for="GdbusFeedbackProxy">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="2069">Class structure for #LfbGdbusFeedbackProxy.</doc>
      <source-position filename="data/lfb-gdbus.h" line="334"/>
      <field name="parent_class">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2071">The parent class.</doc>
        <type name="Gio.DBusProxyClass" c:type="GDBusProxyClass"/>
      </field>
    </record>
    <record name="GdbusFeedbackProxyPrivate"
            c:type="LfbGdbusFeedbackProxyPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="data/lfb-gdbus.h" line="322"/>
    </record>
    <class name="GdbusFeedbackSkeleton"
           c:symbol-prefix="gdbus_feedback_skeleton"
           c:type="LfbGdbusFeedbackSkeleton"
           parent="Gio.DBusInterfaceSkeleton"
           glib:type-name="LfbGdbusFeedbackSkeleton"
           glib:get-type="lfb_gdbus_feedback_skeleton_get_type"
           glib:type-struct="GdbusFeedbackSkeletonClass">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="2475">The #LfbGdbusFeedbackSkeleton structure contains only private data and should only be accessed using the provided API.</doc>
      <source-position filename="data/lfb-gdbus.h" line="404"/>
      <implements name="Gio.DBusInterface"/>
      <implements name="GdbusFeedback"/>
      <constructor name="new" c:identifier="lfb_gdbus_feedback_skeleton_new">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2964">Creates a skeleton object for the D-Bus interface &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt;.</doc>
        <source-position filename="data/lfb-gdbus.h" line="412"/>
        <return-value transfer-ownership="full">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="2969">The skeleton object.</doc>
          <type name="GdbusFeedbackSkeleton" c:type="LfbGdbusFeedback*"/>
        </return-value>
      </constructor>
      <field name="parent_instance" readable="0" private="1">
        <type name="Gio.DBusInterfaceSkeleton"
              c:type="GDBusInterfaceSkeleton"/>
      </field>
      <field name="priv" readable="0" private="1">
        <type name="GdbusFeedbackSkeletonPrivate"
              c:type="LfbGdbusFeedbackSkeletonPrivate*"/>
      </field>
    </class>
    <record name="GdbusFeedbackSkeletonClass"
            c:type="LfbGdbusFeedbackSkeletonClass"
            glib:is-gtype-struct-for="GdbusFeedbackSkeleton">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="2481">Class structure for #LfbGdbusFeedbackSkeleton.</doc>
      <source-position filename="data/lfb-gdbus.h" line="404"/>
      <field name="parent_class">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="2483">The parent class.</doc>
        <type name="Gio.DBusInterfaceSkeletonClass"
              c:type="GDBusInterfaceSkeletonClass"/>
      </field>
    </record>
    <record name="GdbusFeedbackSkeletonPrivate"
            c:type="LfbGdbusFeedbackSkeletonPrivate"
            disguised="1"
            opaque="1">
      <source-position filename="data/lfb-gdbus.h" line="392"/>
    </record>
    <docsection name="LfbGdbusFeedback">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1337">This section contains code for working with the &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt; D-Bus interface in C.</doc>
    </docsection>
    <docsection name="LfbGdbusFeedbackHaptic">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="388">This section contains code for working with the &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt; D-Bus interface in C.</doc>
    </docsection>
    <function name="gdbus_feedback_haptic_interface_info"
              c:identifier="lfb_gdbus_feedback_haptic_interface_info"
              moved-to="GdbusFeedbackHaptic.interface_info">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="477">Gets a machine-readable description of the &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback-Haptic.top_of_page"&gt;org.sigxcpu.Feedback.Haptic&lt;/link&gt; D-Bus interface.</doc>
      <source-position filename="data/lfb-gdbus.h" line="47"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="482">A #GDBusInterfaceInfo. Do not free.</doc>
        <type name="Gio.DBusInterfaceInfo" c:type="GDBusInterfaceInfo*"/>
      </return-value>
    </function>
    <function name="gdbus_feedback_haptic_override_properties"
              c:identifier="lfb_gdbus_feedback_haptic_override_properties"
              moved-to="GdbusFeedbackHaptic.override_properties">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="490">Overrides all #GObject properties in the #LfbGdbusFeedbackHaptic interface for a concrete class.
The properties are overridden in the order they are defined.</doc>
      <source-position filename="data/lfb-gdbus.h" line="48"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="498">The last property id.</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="klass" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="492">The class structure for a #GObject derived class.</doc>
          <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
        </parameter>
        <parameter name="property_id_begin" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="493">The property id to assign to the first overridden property.</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="gdbus_feedback_interface_info"
              c:identifier="lfb_gdbus_feedback_interface_info"
              moved-to="GdbusFeedback.interface_info">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1554">Gets a machine-readable description of the &lt;link linkend="gdbus-interface-org-sigxcpu-Feedback.top_of_page"&gt;org.sigxcpu.Feedback&lt;/link&gt; D-Bus interface.</doc>
      <source-position filename="data/lfb-gdbus.h" line="234"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1559">A #GDBusInterfaceInfo. Do not free.</doc>
        <type name="Gio.DBusInterfaceInfo" c:type="GDBusInterfaceInfo*"/>
      </return-value>
    </function>
    <function name="gdbus_feedback_override_properties"
              c:identifier="lfb_gdbus_feedback_override_properties"
              moved-to="GdbusFeedback.override_properties">
      <doc xml:space="preserve"
           filename="data/lfb-gdbus.c"
           line="1567">Overrides all #GObject properties in the #LfbGdbusFeedback interface for a concrete class.
The properties are overridden in the order they are defined.</doc>
      <source-position filename="data/lfb-gdbus.h" line="235"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="data/lfb-gdbus.c"
             line="1575">The last property id.</doc>
        <type name="guint" c:type="guint"/>
      </return-value>
      <parameters>
        <parameter name="klass" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1569">The class structure for a #GObject derived class.</doc>
          <type name="GObject.ObjectClass" c:type="GObjectClass*"/>
        </parameter>
        <parameter name="property_id_begin" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="data/lfb-gdbus.c"
               line="1570">The property id to assign to the first overridden property.</doc>
          <type name="guint" c:type="guint"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_app_id" c:identifier="lfb_get_app_id">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="135">Get the application id set via [func@Lfb.set_app_id].</doc>
      <source-position filename="libfeedback/lfb-main.h" line="21"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-main.c"
             line="140">the application id.</doc>
        <type name="utf8" c:type="const char*"/>
      </return-value>
    </function>
    <function name="get_feedback_profile"
              c:identifier="lfb_get_feedback_profile">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="161">Gets the currently set feedback profile.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="24"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-main.c"
             line="166">The current profile or %NULL on error.</doc>
        <type name="utf8" c:type="const char*"/>
      </return-value>
    </function>
    <function name="get_proxy" c:identifier="lfb_get_proxy">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="206">This can be used to access the lower level API e.g. to listen to
property changes. The object is not owned by the caller. Don't
unref it after use.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="25"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-main.c"
             line="213">The DBus proxy.</doc>
        <type name="GdbusFeedback" c:type="LfbGdbusFeedback*"/>
      </return-value>
    </function>
    <function name="init" c:identifier="lfb_init" throws="1">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="72">Initialize libfeedback. This must be called before any other of libfeedback's functions.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="18"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-main.c"
             line="79">%TRUE if successful, or %FALSE on error.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
      <parameters>
        <parameter name="app_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-main.c"
               line="74">The application id</doc>
          <type name="utf8" c:type="const gchar*"/>
        </parameter>
      </parameters>
    </function>
    <function name="is_initted" c:identifier="lfb_is_initted">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="148">Gets whether or not libfeedback is initialized.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="22"/>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve"
             filename="libfeedback/lfb-main.c"
             line="153">%TRUE if libfeedback is initialized, or %FALSE otherwise.</doc>
        <type name="gboolean" c:type="gboolean"/>
      </return-value>
    </function>
    <function name="set_app_id" c:identifier="lfb_set_app_id">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="122">Sets the application id.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="20"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="app_id" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-main.c"
               line="124">The application id</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="set_feedback_profile"
              c:identifier="lfb_set_feedback_profile">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="183">Sets the active feedback profile to #profile. It is up to the feedback
daemon to ignore this request. The new profile might not become active
immediately. You can listen to changes #LfbGdbusFeedback's ::profile
property to get notified when it takes effect.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="23"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="profile" transfer-ownership="none">
          <doc xml:space="preserve"
               filename="libfeedback/lfb-main.c"
               line="185">The profile to set</doc>
          <type name="utf8" c:type="const char*"/>
        </parameter>
      </parameters>
    </function>
    <function name="uninit" c:identifier="lfb_uninit">
      <doc xml:space="preserve"
           filename="libfeedback/lfb-main.c"
           line="103">Uninitialize the library when no longer used. Usually called
on program shutdown.</doc>
      <source-position filename="libfeedback/lfb-main.h" line="19"/>
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
  </namespace>
</repository>
