mirror of https://gitee.com/openkylin/qemu.git
can_host: Use class properties
Instance properties make introspection hard and are not shown by "-object ...,help". Convert them to class properties. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Tested-by: Pavel Pisa <pisa@cmp.felk.cvut.cz> Message-Id: <20201111183823.283752-9-ehabkost@redhat.com> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
This commit is contained in:
parent
85cc807cbc
commit
70b756674c
|
@ -77,21 +77,16 @@ static void can_host_complete(UserCreatable *uc, Error **errp)
|
||||||
can_host_connect(CAN_HOST(uc), errp);
|
can_host_connect(CAN_HOST(uc), errp);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void can_host_instance_init(Object *obj)
|
|
||||||
{
|
|
||||||
CanHostState *ch = CAN_HOST(obj);
|
|
||||||
|
|
||||||
object_property_add_link(obj, "canbus", TYPE_CAN_BUS,
|
|
||||||
(Object **)&ch->bus,
|
|
||||||
object_property_allow_set_link,
|
|
||||||
OBJ_PROP_LINK_STRONG);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void can_host_class_init(ObjectClass *klass,
|
static void can_host_class_init(ObjectClass *klass,
|
||||||
void *class_data G_GNUC_UNUSED)
|
void *class_data G_GNUC_UNUSED)
|
||||||
{
|
{
|
||||||
UserCreatableClass *uc_klass = USER_CREATABLE_CLASS(klass);
|
UserCreatableClass *uc_klass = USER_CREATABLE_CLASS(klass);
|
||||||
|
|
||||||
|
object_class_property_add_link(klass, "canbus", TYPE_CAN_BUS,
|
||||||
|
offsetof(CanHostState, bus),
|
||||||
|
object_property_allow_set_link,
|
||||||
|
OBJ_PROP_LINK_STRONG);
|
||||||
|
|
||||||
klass->unparent = can_host_unparent;
|
klass->unparent = can_host_unparent;
|
||||||
uc_klass->complete = can_host_complete;
|
uc_klass->complete = can_host_complete;
|
||||||
}
|
}
|
||||||
|
@ -102,7 +97,6 @@ static const TypeInfo can_host_info = {
|
||||||
.instance_size = sizeof(CanHostState),
|
.instance_size = sizeof(CanHostState),
|
||||||
.class_size = sizeof(CanHostClass),
|
.class_size = sizeof(CanHostClass),
|
||||||
.abstract = true,
|
.abstract = true,
|
||||||
.instance_init = can_host_instance_init,
|
|
||||||
.class_init = can_host_class_init,
|
.class_init = can_host_class_init,
|
||||||
.interfaces = (InterfaceInfo[]) {
|
.interfaces = (InterfaceInfo[]) {
|
||||||
{ TYPE_USER_CREATABLE },
|
{ TYPE_USER_CREATABLE },
|
||||||
|
|
Loading…
Reference in New Issue