1/* AUTOMATICALLY GENERATED, DO NOT MODIFY */
2
3/*
4 * Schema-defined QAPI types
5 *
6 * Copyright IBM, Corp. 2011
7 * Copyright (c) 2013-2018 Red Hat Inc.
8 *
9 * This work is licensed under the terms of the GNU LGPL, version 2.1 or later.
10 * See the COPYING.LIB file in the top-level directory.
11 */
12
13#ifndef QAPI_TYPES_QOM_H
14#define QAPI_TYPES_QOM_H
15
16#include "qapi/qapi-builtin-types.h"
17
18typedef struct ObjectPropertyInfo ObjectPropertyInfo;
19
20typedef struct q_obj_qom_list_arg q_obj_qom_list_arg;
21
22typedef struct ObjectPropertyInfoList ObjectPropertyInfoList;
23
24typedef struct q_obj_qom_get_arg q_obj_qom_get_arg;
25
26typedef struct q_obj_qom_set_arg q_obj_qom_set_arg;
27
28typedef struct ObjectTypeInfo ObjectTypeInfo;
29
30typedef struct q_obj_qom_list_types_arg q_obj_qom_list_types_arg;
31
32typedef struct ObjectTypeInfoList ObjectTypeInfoList;
33
34typedef struct q_obj_qom_list_properties_arg q_obj_qom_list_properties_arg;
35
36typedef struct q_obj_object_add_arg q_obj_object_add_arg;
37
38typedef struct q_obj_object_del_arg q_obj_object_del_arg;
39
40struct ObjectPropertyInfo {
41 char *name;
42 char *type;
43 bool has_description;
44 char *description;
45};
46
47void qapi_free_ObjectPropertyInfo(ObjectPropertyInfo *obj);
48
49struct q_obj_qom_list_arg {
50 char *path;
51};
52
53struct ObjectPropertyInfoList {
54 ObjectPropertyInfoList *next;
55 ObjectPropertyInfo *value;
56};
57
58void qapi_free_ObjectPropertyInfoList(ObjectPropertyInfoList *obj);
59
60struct q_obj_qom_get_arg {
61 char *path;
62 char *property;
63};
64
65struct q_obj_qom_set_arg {
66 char *path;
67 char *property;
68 QObject *value;
69};
70
71struct ObjectTypeInfo {
72 char *name;
73 bool has_abstract;
74 bool abstract;
75 bool has_parent;
76 char *parent;
77};
78
79void qapi_free_ObjectTypeInfo(ObjectTypeInfo *obj);
80
81struct q_obj_qom_list_types_arg {
82 bool has_implements;
83 char *implements;
84 bool has_abstract;
85 bool abstract;
86};
87
88struct ObjectTypeInfoList {
89 ObjectTypeInfoList *next;
90 ObjectTypeInfo *value;
91};
92
93void qapi_free_ObjectTypeInfoList(ObjectTypeInfoList *obj);
94
95struct q_obj_qom_list_properties_arg {
96 char *q_typename;
97};
98
99struct q_obj_object_add_arg {
100 char *qom_type;
101 char *id;
102 bool has_props;
103 QObject *props;
104};
105
106struct q_obj_object_del_arg {
107 char *id;
108};
109
110#endif /* QAPI_TYPES_QOM_H */
111