1 /* AUTOMATICALLY GENERATED, DO NOT MODIFY */
4 * schema-defined QAPI event functions
6 * Copyright (c) 2014 Wenchao Xia
9 * Wenchao Xia <wenchaoqemu@gmail.com>
11 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
12 * See the COPYING.LIB file in the top-level directory.
16 #include "qemu/osdep.h"
17 #include "qemu-common.h"
18 #include "test-qapi-event.h"
19 #include "test-qapi-visit.h"
20 #include "qapi/qmp-output-visitor.h"
21 #include "qapi/qmp-event.h"
24 void qapi_event_send_event_a(Error
**errp
)
28 QMPEventFuncEmit emit
;
30 emit
= qmp_event_get_func_emit();
35 qmp
= qmp_event_build_dict("EVENT_A");
37 emit(TEST_QAPI_EVENT_EVENT_A
, qmp
, &err
);
39 error_propagate(errp
, err
);
43 void qapi_event_send_event_b(Error
**errp
)
47 QMPEventFuncEmit emit
;
49 emit
= qmp_event_get_func_emit();
54 qmp
= qmp_event_build_dict("EVENT_B");
56 emit(TEST_QAPI_EVENT_EVENT_B
, qmp
, &err
);
58 error_propagate(errp
, err
);
62 void qapi_event_send_event_c(bool has_a
, int64_t a
, bool has_b
, UserDefOne
*b
, const char *c
, Error
**errp
)
66 QMPEventFuncEmit emit
;
67 QmpOutputVisitor
*qov
;
69 q_obj_EVENT_C_arg param
= {
70 has_a
, a
, has_b
, b
, (char *)c
73 emit
= qmp_event_get_func_emit();
78 qmp
= qmp_event_build_dict("EVENT_C");
80 qov
= qmp_output_visitor_new();
81 v
= qmp_output_get_visitor(qov
);
83 visit_start_struct(v
, "EVENT_C", NULL
, 0, &err
);
87 visit_type_q_obj_EVENT_C_arg_members(v
, ¶m
, &err
);
89 visit_check_struct(v
, &err
);
96 qdict_put_obj(qmp
, "data", qmp_output_get_qobject(qov
));
97 emit(TEST_QAPI_EVENT_EVENT_C
, qmp
, &err
);
100 qmp_output_visitor_cleanup(qov
);
101 error_propagate(errp
, err
);
105 void qapi_event_send_event_d(EventStructOne
*a
, const char *b
, bool has_c
, const char *c
, bool has_enum3
, EnumOne enum3
, Error
**errp
)
109 QMPEventFuncEmit emit
;
110 QmpOutputVisitor
*qov
;
112 q_obj_EVENT_D_arg param
= {
113 a
, (char *)b
, has_c
, (char *)c
, has_enum3
, enum3
116 emit
= qmp_event_get_func_emit();
121 qmp
= qmp_event_build_dict("EVENT_D");
123 qov
= qmp_output_visitor_new();
124 v
= qmp_output_get_visitor(qov
);
126 visit_start_struct(v
, "EVENT_D", NULL
, 0, &err
);
130 visit_type_q_obj_EVENT_D_arg_members(v
, ¶m
, &err
);
132 visit_check_struct(v
, &err
);
139 qdict_put_obj(qmp
, "data", qmp_output_get_qobject(qov
));
140 emit(TEST_QAPI_EVENT_EVENT_D
, qmp
, &err
);
143 qmp_output_visitor_cleanup(qov
);
144 error_propagate(errp
, err
);
148 void qapi_event_send___org_qemu_x_event(__org_qemu_x_Enum __org_qemu_x_member1
, const char *__org_qemu_x_member2
, bool has_q_wchar_t
, int64_t q_wchar_t
, Error
**errp
)
152 QMPEventFuncEmit emit
;
153 QmpOutputVisitor
*qov
;
155 __org_qemu_x_Struct param
= {
156 __org_qemu_x_member1
, (char *)__org_qemu_x_member2
, has_q_wchar_t
, q_wchar_t
159 emit
= qmp_event_get_func_emit();
164 qmp
= qmp_event_build_dict("__ORG.QEMU_X-EVENT");
166 qov
= qmp_output_visitor_new();
167 v
= qmp_output_get_visitor(qov
);
169 visit_start_struct(v
, "__ORG.QEMU_X-EVENT", NULL
, 0, &err
);
173 visit_type___org_qemu_x_Struct_members(v
, ¶m
, &err
);
175 visit_check_struct(v
, &err
);
182 qdict_put_obj(qmp
, "data", qmp_output_get_qobject(qov
));
183 emit(TEST_QAPI_EVENT___ORG_QEMU_X_EVENT
, qmp
, &err
);
186 qmp_output_visitor_cleanup(qov
);
187 error_propagate(errp
, err
);
191 const char *const test_QAPIEvent_lookup
[] = {
192 [TEST_QAPI_EVENT_EVENT_A
] = "EVENT_A",
193 [TEST_QAPI_EVENT_EVENT_B
] = "EVENT_B",
194 [TEST_QAPI_EVENT_EVENT_C
] = "EVENT_C",
195 [TEST_QAPI_EVENT_EVENT_D
] = "EVENT_D",
196 [TEST_QAPI_EVENT___ORG_QEMU_X_EVENT
] = "__ORG.QEMU_X-EVENT",
197 [TEST_QAPI_EVENT__MAX
] = NULL
,