b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* The following definitions are auto-generated from sbus_codegen_tests.xml */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
054900ab42a8b865a2257f94c66484e0a022a90cLukas Slebodnik#include <stddef.h>
054900ab42a8b865a2257f94c66484e0a022a90cLukas Slebodnik
054900ab42a8b865a2257f94c66484e0a022a90cLukas Slebodnik#include "dbus/dbus-protocol.h"
054900ab42a8b865a2257f94c66484e0a022a90cLukas Slebodnik#include "util/util_errors.h"
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter#include "sbus/sssd_dbus.h"
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter#include "sbus/sssd_dbus_meta.h"
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina#include "sbus/sssd_dbus_invokers.h"
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter#include "sbus_codegen_tests_generated.h"
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* invokes a handler with a 'bu' DBus signature */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterstatic int invoke_bu_method(struct sbus_request *dbus_req, void *function_ptr);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* invokes a handler with a 's' DBus signature */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterstatic int invoke_s_method(struct sbus_request *dbus_req, void *function_ptr);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* invokes a handler with a 'u' DBus signature */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterstatic int invoke_u_method(struct sbus_request *dbus_req, void *function_ptr);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter/* invokes a handler with a 'ybnqiuxtdsoayanaqaiauaxatadasao' DBus signature */
1203e462650f035b0df2304075d60b9a99e36715Stef Walterstatic int invoke_ybnqiuxtdsoayanaqaiauaxatadasao_method(struct sbus_request *dbus_req, void *function_ptr);
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* arguments for com.planetexpress.Ship.MoveUniverse */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_arg_meta com_planetexpress_Ship_MoveUniverse__in[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { "smoothly", "b" },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { "speed_factor", "u" },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* arguments for com.planetexpress.Ship.MoveUniverse */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_arg_meta com_planetexpress_Ship_MoveUniverse__out[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { "where_we_crashed", "s" },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterint com_planetexpress_Ship_MoveUniverse_finish(struct sbus_request *req, const char *arg_where_we_crashed)
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter{
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter return sbus_request_return_and_finish(req,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_STRING, &arg_where_we_crashed,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_INVALID);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter}
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* arguments for com.planetexpress.Ship.Crash */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterconst struct sbus_arg_meta com_planetexpress_Ship_crash_now__in[] = {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { "where", "s" },
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { NULL, }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter};
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterint com_planetexpress_Ship_crash_now_finish(struct sbus_request *req)
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter{
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter return sbus_request_return_and_finish(req,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_INVALID);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter}
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* methods for com.planetexpress.Ship */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_method_meta com_planetexpress_Ship__methods[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "MoveUniverse", /* name */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter com_planetexpress_Ship_MoveUniverse__in,
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter com_planetexpress_Ship_MoveUniverse__out,
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter offsetof(struct com_planetexpress_Ship, MoveUniverse),
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter invoke_bu_method,
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter },
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter {
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter "Crash", /* name */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter com_planetexpress_Ship_crash_now__in,
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter NULL, /* no out_args */
fcd8093c58638dc7c4f9cddfc97f273b94ce2eadStef Walter offsetof(struct com_planetexpress_Ship, crash_now),
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter invoke_s_method,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter },
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter "Land", /* name */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter NULL, /* no in_args */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter NULL, /* no out_args */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter offsetof(struct com_planetexpress_Ship, Land),
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter NULL, /* no invoker */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* arguments for com.planetexpress.Ship.BecameSentient */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_arg_meta com_planetexpress_Ship_BecameSentient__args[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { "gender", "s" },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* signals for com.planetexpress.Ship */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_signal_meta com_planetexpress_Ship__signals[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "BecameSentient", /* name */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter com_planetexpress_Ship_BecameSentient__args
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* property info for com.planetexpress.Ship */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_property_meta com_planetexpress_Ship__properties[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "Color", /* name */
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter "s", /* type */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct com_planetexpress_Ship, get_Color),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_s,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* interface info for com.planetexpress.Ship */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_interface_meta com_planetexpress_Ship_meta = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "com.planetexpress.Ship", /* name */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter com_planetexpress_Ship__methods,
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter com_planetexpress_Ship__signals,
4f7f714e118e95896fac5239c7a8b529c39a4758Jakub Hrozek com_planetexpress_Ship__properties,
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_all, /* GetAll invoker */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* arguments for com.planetexpress.Pilot.Blink */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterconst struct sbus_arg_meta test_pilot_Blink__in[] = {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { "duration", "u" },
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { NULL, }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter};
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* arguments for com.planetexpress.Pilot.Blink */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterconst struct sbus_arg_meta test_pilot_Blink__out[] = {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { "crashed", "b" },
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { NULL, }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter};
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterint test_pilot_Blink_finish(struct sbus_request *req, bool arg_crashed)
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter{
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter dbus_bool_t cast_crashed = arg_crashed;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter return sbus_request_return_and_finish(req,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_BOOLEAN, &cast_crashed,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_INVALID);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter}
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter/* arguments for com.planetexpress.Pilot.Eject */
1203e462650f035b0df2304075d60b9a99e36715Stef Walterconst struct sbus_arg_meta test_pilot_Eject__in[] = {
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "byte", "y" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "boolean", "b" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int16", "n" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint16", "q" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int32", "i" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint32", "u" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int64", "x" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint64", "t" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "double", "d" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "string", "s" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "object_path", "o" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "byte_array", "ay" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int16_array", "an" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint16_array", "aq" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int32_array", "ai" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint32_array", "au" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int64_array", "ax" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint64_array", "at" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "double_array", "ad" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "string_array", "as" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "object_path_array", "ao" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { NULL, }
1203e462650f035b0df2304075d60b9a99e36715Stef Walter};
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter/* arguments for com.planetexpress.Pilot.Eject */
1203e462650f035b0df2304075d60b9a99e36715Stef Walterconst struct sbus_arg_meta test_pilot_Eject__out[] = {
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "byte", "y" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "boolean", "b" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int16", "n" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint16", "q" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int32", "i" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint32", "u" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int64", "x" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint64", "t" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "double", "d" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "string", "s" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "object_path", "o" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "byte_array", "ay" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int16_array", "an" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint16_array", "aq" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int32_array", "ai" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint32_array", "au" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "int64_array", "ax" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "uint64_array", "at" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "double_array", "ad" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "string_array", "as" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { "object_path_array", "ao" },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter { NULL, }
1203e462650f035b0df2304075d60b9a99e36715Stef Walter};
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walterint test_pilot_Eject_finish(struct sbus_request *req, uint8_t arg_byte, bool arg_boolean, int16_t arg_int16, uint16_t arg_uint16, int32_t arg_int32, uint32_t arg_uint32, int64_t arg_int64, uint64_t arg_uint64, double arg_double, const char *arg_string, const char *arg_object_path, uint8_t arg_byte_array[], int len_byte_array, int16_t arg_int16_array[], int len_int16_array, uint16_t arg_uint16_array[], int len_uint16_array, int32_t arg_int32_array[], int len_int32_array, uint32_t arg_uint32_array[], int len_uint32_array, int64_t arg_int64_array[], int len_int64_array, uint64_t arg_uint64_array[], int len_uint64_array, double arg_double_array[], int len_double_array, const char *arg_string_array[], int len_string_array, const char *arg_object_path_array[], int len_object_path_array)
1203e462650f035b0df2304075d60b9a99e36715Stef Walter{
1203e462650f035b0df2304075d60b9a99e36715Stef Walter dbus_bool_t cast_boolean = arg_boolean;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter return sbus_request_return_and_finish(req,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_BYTE, &arg_byte,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_BOOLEAN, &cast_boolean,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INT16, &arg_int16,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_UINT16, &arg_uint16,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INT32, &arg_int32,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_UINT32, &arg_uint32,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INT64, &arg_int64,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_UINT64, &arg_uint64,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_DOUBLE, &arg_double,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_STRING, &arg_string,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_OBJECT_PATH, &arg_object_path,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE, &arg_byte_array, len_byte_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_INT16, &arg_int16_array, len_int16_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_UINT16, &arg_uint16_array, len_uint16_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_INT32, &arg_int32_array, len_int32_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, &arg_uint32_array, len_uint32_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_INT64, &arg_int64_array, len_int64_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_UINT64, &arg_uint64_array, len_uint64_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_DOUBLE, &arg_double_array, len_double_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &arg_string_array, len_string_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_OBJECT_PATH, &arg_object_path_array, len_object_path_array,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INVALID);
1203e462650f035b0df2304075d60b9a99e36715Stef Walter}
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* methods for com.planetexpress.Pilot */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterconst struct sbus_method_meta test_pilot__methods[] = {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter "Blink", /* name */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter test_pilot_Blink__in,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter test_pilot_Blink__out,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter offsetof(struct test_pilot, Blink),
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter invoke_u_method,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter },
1203e462650f035b0df2304075d60b9a99e36715Stef Walter {
1203e462650f035b0df2304075d60b9a99e36715Stef Walter "Eject", /* name */
1203e462650f035b0df2304075d60b9a99e36715Stef Walter test_pilot_Eject__in,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter test_pilot_Eject__out,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter offsetof(struct test_pilot, Eject),
1203e462650f035b0df2304075d60b9a99e36715Stef Walter invoke_ybnqiuxtdsoayanaqaiauaxatadasao_method,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter },
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter { NULL, }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter};
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* property info for com.planetexpress.Pilot */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_property_meta test_pilot__properties[] = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "FullName", /* name */
1319e71fd1680ca4864afe0b1aca2b8c8e4a1ee4Stef Walter "s", /* type */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter SBUS_PROPERTY_READABLE | SBUS_PROPERTY_WRITABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_FullName),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_s,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "byte", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "y", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_byte),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_y,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "boolean", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "b", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_boolean),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_b,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "int16", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "n", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_int16),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_n,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "uint16", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "q", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_uint16),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_q,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "int32", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "i", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_int32),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_i,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "uint32", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "u", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_uint32),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_u,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "int64", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "x", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_int64),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_x,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "uint64", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "t", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_uint64),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_t,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "double", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "d", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_double),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_d,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "string", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "s", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_string),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_s,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "object_path", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "o", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_object_path),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_o,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
58229439447d5617913a5a2e173b78105c694842Pavel Březina {
58229439447d5617913a5a2e173b78105c694842Pavel Březina "null_string", /* name */
58229439447d5617913a5a2e173b78105c694842Pavel Březina "s", /* type */
58229439447d5617913a5a2e173b78105c694842Pavel Březina SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_null_string),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_s,
58229439447d5617913a5a2e173b78105c694842Pavel Březina 0, /* not writable */
58229439447d5617913a5a2e173b78105c694842Pavel Březina NULL, /* no invoker */
58229439447d5617913a5a2e173b78105c694842Pavel Březina },
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek {
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek "null_path", /* name */
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek "o", /* type */
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_null_path),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_o,
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek 0, /* not writable */
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek NULL, /* no invoker */
5de968e80ade1c02d1907834dcff95e9fc9ad10aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "byte_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "ay", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_byte_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_ay,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "int16_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "an", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_int16_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_an,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "uint16_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "aq", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_uint16_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_aq,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "int32_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "ai", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_int32_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_ai,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "uint32_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "au", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_uint32_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_au,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "int64_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "ax", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_int64_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_ax,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "uint64_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "at", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_uint64_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_at,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "double_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "ad", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_double_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_ad,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "string_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "as", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_string_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_as,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek },
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek {
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "object_path_array", /* name */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek "ao", /* type */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek SBUS_PROPERTY_READABLE,
4e5d19f659d8c545c4ed3c307c95cfe4f2ca33cbPavel Březina offsetof(struct test_pilot, get_object_path_array),
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_ao,
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek 0, /* not writable */
90e04eae7e54ec892a6f239783df94dab5d1ed9aJakub Hrozek NULL, /* no invoker */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter },
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter { NULL, }
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter/* interface info for com.planetexpress.Pilot */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walterconst struct sbus_interface_meta test_pilot_meta = {
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter "com.planetexpress.Pilot", /* name */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter test_pilot__methods,
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter NULL, /* no signals */
4f7f714e118e95896fac5239c7a8b529c39a4758Jakub Hrozek test_pilot__properties,
df4e1db5d41c903ae57fd880acc76a0ad84aa7b2Pavel Březina sbus_invoke_get_all, /* GetAll invoker */
b699c4d7f85a5404be1d1ee9450331aea869b886Stef Walter};
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
ac744223411099a862a747e7168a30255c003bf7Pavel Březina/* property info for com.planetexpress.Special */
ac744223411099a862a747e7168a30255c003bf7Pavel Březinaconst struct sbus_property_meta test_special__properties[] = {
ac744223411099a862a747e7168a30255c003bf7Pavel Březina {
ac744223411099a862a747e7168a30255c003bf7Pavel Březina "array_dict_sas", /* name */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina "a{sas}", /* type */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina SBUS_PROPERTY_READABLE,
ac744223411099a862a747e7168a30255c003bf7Pavel Březina offsetof(struct test_special, get_array_dict_sas),
ac744223411099a862a747e7168a30255c003bf7Pavel Březina sbus_invoke_get_aDOsasDE,
ac744223411099a862a747e7168a30255c003bf7Pavel Březina 0, /* not writable */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina NULL, /* no invoker */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina },
ac744223411099a862a747e7168a30255c003bf7Pavel Březina { NULL, }
ac744223411099a862a747e7168a30255c003bf7Pavel Březina};
ac744223411099a862a747e7168a30255c003bf7Pavel Březina
ac744223411099a862a747e7168a30255c003bf7Pavel Březina/* interface info for com.planetexpress.Special */
ac744223411099a862a747e7168a30255c003bf7Pavel Březinaconst struct sbus_interface_meta test_special_meta = {
ac744223411099a862a747e7168a30255c003bf7Pavel Březina "com.planetexpress.Special", /* name */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina NULL, /* no methods */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina NULL, /* no signals */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina test_special__properties,
ac744223411099a862a747e7168a30255c003bf7Pavel Březina sbus_invoke_get_all, /* GetAll invoker */
ac744223411099a862a747e7168a30255c003bf7Pavel Březina};
ac744223411099a862a747e7168a30255c003bf7Pavel Březina
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* invokes a handler with a 'bu' DBus signature */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterstatic int invoke_bu_method(struct sbus_request *dbus_req, void *function_ptr)
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter{
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter dbus_bool_t arg_0;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter uint32_t arg_1;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter int (*handler)(struct sbus_request *, void *, bool, uint32_t) = function_ptr;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter if (!sbus_request_parse_or_finish(dbus_req,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_BOOLEAN, &arg_0,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_UINT32, &arg_1,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_INVALID)) {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter return EOK; /* request handled */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
66277b21179d95f6e96abed01a20ccbccf27ce99Pavel Březina return (handler)(dbus_req, dbus_req->intf->handler_data,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter arg_0,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter arg_1);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter}
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* invokes a handler with a 's' DBus signature */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterstatic int invoke_s_method(struct sbus_request *dbus_req, void *function_ptr)
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter{
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter const char * arg_0;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter int (*handler)(struct sbus_request *, void *, const char *) = function_ptr;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter if (!sbus_request_parse_or_finish(dbus_req,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_STRING, &arg_0,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_INVALID)) {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter return EOK; /* request handled */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
66277b21179d95f6e96abed01a20ccbccf27ce99Pavel Březina return (handler)(dbus_req, dbus_req->intf->handler_data,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter arg_0);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter}
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter/* invokes a handler with a 'u' DBus signature */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walterstatic int invoke_u_method(struct sbus_request *dbus_req, void *function_ptr)
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter{
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter uint32_t arg_0;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter int (*handler)(struct sbus_request *, void *, uint32_t) = function_ptr;
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter if (!sbus_request_parse_or_finish(dbus_req,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_UINT32, &arg_0,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter DBUS_TYPE_INVALID)) {
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter return EOK; /* request handled */
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter }
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter
66277b21179d95f6e96abed01a20ccbccf27ce99Pavel Březina return (handler)(dbus_req, dbus_req->intf->handler_data,
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter arg_0);
dff909d473f43a6bd0f0286fa2d279c0ebe945c6Stef Walter}
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter/* invokes a handler with a 'ybnqiuxtdsoayanaqaiauaxatadasao' DBus signature */
1203e462650f035b0df2304075d60b9a99e36715Stef Walterstatic int invoke_ybnqiuxtdsoayanaqaiauaxatadasao_method(struct sbus_request *dbus_req, void *function_ptr)
1203e462650f035b0df2304075d60b9a99e36715Stef Walter{
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint8_t arg_0;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter dbus_bool_t arg_1;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int16_t arg_2;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint16_t arg_3;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int32_t arg_4;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint32_t arg_5;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int64_t arg_6;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint64_t arg_7;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter double arg_8;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter const char * arg_9;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter const char * arg_10;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint8_t *arg_11;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_11;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int16_t *arg_12;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_12;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint16_t *arg_13;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_13;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int32_t *arg_14;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_14;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint32_t *arg_15;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_15;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int64_t *arg_16;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_16;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter uint64_t *arg_17;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_17;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter double *arg_18;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_18;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter const char * *arg_19;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_19;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter const char * *arg_20;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int len_20;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter int (*handler)(struct sbus_request *, void *, uint8_t, bool, int16_t, uint16_t, int32_t, uint32_t, int64_t, uint64_t, double, const char *, const char *, uint8_t[], int, int16_t[], int, uint16_t[], int, int32_t[], int, uint32_t[], int, int64_t[], int, uint64_t[], int, double[], int, const char *[], int, const char *[], int) = function_ptr;
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
1203e462650f035b0df2304075d60b9a99e36715Stef Walter if (!sbus_request_parse_or_finish(dbus_req,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_BYTE, &arg_0,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_BOOLEAN, &arg_1,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INT16, &arg_2,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_UINT16, &arg_3,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INT32, &arg_4,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_UINT32, &arg_5,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INT64, &arg_6,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_UINT64, &arg_7,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_DOUBLE, &arg_8,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_STRING, &arg_9,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_OBJECT_PATH, &arg_10,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_BYTE, &arg_11, &len_11,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_INT16, &arg_12, &len_12,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_UINT16, &arg_13, &len_13,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_INT32, &arg_14, &len_14,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_UINT32, &arg_15, &len_15,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_INT64, &arg_16, &len_16,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_UINT64, &arg_17, &len_17,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_DOUBLE, &arg_18, &len_18,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_STRING, &arg_19, &len_19,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_ARRAY, DBUS_TYPE_OBJECT_PATH, &arg_20, &len_20,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter DBUS_TYPE_INVALID)) {
1203e462650f035b0df2304075d60b9a99e36715Stef Walter return EOK; /* request handled */
1203e462650f035b0df2304075d60b9a99e36715Stef Walter }
1203e462650f035b0df2304075d60b9a99e36715Stef Walter
66277b21179d95f6e96abed01a20ccbccf27ce99Pavel Březina return (handler)(dbus_req, dbus_req->intf->handler_data,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_0,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_1,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_2,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_3,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_4,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_5,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_6,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_7,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_8,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_9,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_10,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_11,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_11,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_12,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_12,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_13,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_13,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_14,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_14,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_15,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_15,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_16,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_16,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_17,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_17,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_18,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_18,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_19,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_19,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter arg_20,
1203e462650f035b0df2304075d60b9a99e36715Stef Walter len_20);
1203e462650f035b0df2304075d60b9a99e36715Stef Walter}