b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN"
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter<node>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!--
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter This file should exercise as many aspects of the sbus_codegen as
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter possible. See sbus_codegen_test.c for verification.
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!--
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter This is an interface, it will get a sbus_interface_meta struct.
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter Its name will be com_planetexpress_Ship__meta, since no c symbol
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter is specified.
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <interface name="com.planetexpress.Ship">
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- A property -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <property name="Color" type="s" access="read"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- A method with two in and one out argument -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <method name="MoveUniverse">
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- This is a boolean arg -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <arg name="smoothly" type="b" direction="in"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- This is an uint32 arg -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <arg name="speed_factor" type="u" direction="in"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- This is a string arg -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <arg name="where_we_crashed" type="s" direction="out"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter </method>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- A signal with one argument -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <signal name="BecameSentient">
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <arg name="gender" type="s"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter </signal>
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter <!-- A method with a specific c name -->
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter <method name="Crash">
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter <annotation value="crash_now" name="org.freedesktop.DBus.GLib.CSymbol"/>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <arg name="where" type="s" direction="in"/>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter </method>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <!-- A method without a type-safe handler -->
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <method name="Land">
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <annotation name="org.freedesktop.sssd.RawHandler" value="true"/>
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter </method>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter </interface>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!--
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter Another interface. It's C name will be test_pilot, since we've overridden
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter the c symbol name.
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <interface name="com.planetexpress.Pilot">
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <annotation value="test_pilot" name="org.freedesktop.DBus.GLib.CSymbol"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <!-- A property -->
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter <property name="FullName" type="s" access="readwrite"/>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <!-- A simple method -->
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <method name="Blink">
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <!-- This is an uint32 arg -->
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <arg name="duration" type="u" direction="in"/>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <!-- This is a boolean return value -->
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter <arg name="crashed" type="b" direction="out"/>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter </method>
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <!-- A method with every type of basic argument, in both directions -->
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <method name="Eject">
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="byte" type="y" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="boolean" type="b" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int16" type="n" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint16" type="q" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int32" type="i" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint32" type="u" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int64" type="x" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint64" type="t" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="double" type="d" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="string" type="s" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="object_path" type="o" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="byte_array" type="ay" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int16_array" type="an" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint16_array" type="aq" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int32_array" type="ai" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint32_array" type="au" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int64_array" type="ax" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint64_array" type="at" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="double_array" type="ad" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="string_array" type="as" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="object_path_array" type="ao" direction="in"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="byte" type="y" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="boolean" type="b" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int16" type="n" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint16" type="q" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int32" type="i" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint32" type="u" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int64" type="x" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint64" type="t" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="double" type="d" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="string" type="s" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="object_path" type="o" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="byte_array" type="ay" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int16_array" type="an" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint16_array" type="aq" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int32_array" type="ai" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint32_array" type="au" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="int64_array" type="ax" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="uint64_array" type="at" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="double_array" type="ad" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="string_array" type="as" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter <arg name="object_path_array" type="ao" direction="out"/>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter </method>
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <!-- Properties with every type of basic argument, so far read only -->
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="byte" type="y" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="boolean" type="b" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="int16" type="n" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="uint16" type="q" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="int32" type="i" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="uint32" type="u" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="int64" type="x" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="uint64" type="t" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="double" type="d" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="string" type="s" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="object_path" type="o" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek
58229439447d5617913a5a2e173b78105c694842Pavel Březina <!-- Special properties to test error codes -->
58229439447d5617913a5a2e173b78105c694842Pavel Březina <property name="null_string" type="s" access="read"/>
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek <property name="null_path" type="o" access="read"/>
58229439447d5617913a5a2e173b78105c694842Pavel Březina
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <!-- Property arrays with every type of basic argument except boolean
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek which we can't do (yet) -->
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="byte_array" type="ay" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="int16_array" type="an" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="uint16_array" type="aq" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="int32_array" type="ai" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="uint32_array" type="au" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="int64_array" type="ax" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="uint64_array" type="at" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="double_array" type="ad" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="string_array" type="as" access="read"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek <property name="object_path_array" type="ao" access="read"/>
ac744223411099a862a747e7168a30255c003bf7Pavel Březina </interface>
ac744223411099a862a747e7168a30255c003bf7Pavel Březina
ac744223411099a862a747e7168a30255c003bf7Pavel Březina <!--
ac744223411099a862a747e7168a30255c003bf7Pavel Březina Special property types not suitable for group automatic tests.
ac744223411099a862a747e7168a30255c003bf7Pavel Březina -->
ac744223411099a862a747e7168a30255c003bf7Pavel Březina <interface name="com.planetexpress.Special">
ac744223411099a862a747e7168a30255c003bf7Pavel Březina <annotation value="test_special" name="org.freedesktop.DBus.GLib.CSymbol"/>
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek
ac744223411099a862a747e7168a30255c003bf7Pavel Březina <property name="array_dict_sas" type="a{sas}" access="read"/>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter </interface>
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter</node>