[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 01/24] qom: add object_class_get_parent
From: |
Andreas Färber |
Subject: |
Re: [Qemu-devel] [PATCH v2 01/24] qom: add object_class_get_parent |
Date: |
Thu, 12 Apr 2012 18:00:40 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120312 Thunderbird/11.0 |
Am 11.04.2012 23:30, schrieb Paolo Bonzini:
> This simple bit of functionality was missing and we'll need it soon,
> so add it.
>
> Signed-off-by: Paolo Bonzini <address@hidden>
> ---
> include/qemu/object.h | 14 ++++++++++++++
> qom/object.c | 13 +++++++++++++
> 2 files changed, 27 insertions(+)
>
> diff --git a/include/qemu/object.h b/include/qemu/object.h
> index a675937..f814521 100644
> --- a/include/qemu/object.h
> +++ b/include/qemu/object.h
> @@ -548,6 +548,14 @@ ObjectClass *object_class_dynamic_cast(ObjectClass
> *klass,
> const char *typename);
>
> /**
> + * object_class_get_parent:
> + * @klass: The class to obtain the parent for.
> + *
> + * Returns: The parent for @klass.
> + */
> +ObjectClass *object_class_get_parent(ObjectClass *klass);
> +
> +/**
> * object_class_get_name:
> * @klass: The class to obtain the QOM typename for.
> *
> @@ -555,6 +563,12 @@ ObjectClass *object_class_dynamic_cast(ObjectClass
> *klass,
> */
> const char *object_class_get_name(ObjectClass *klass);
>
> +/**
> + * object_class_by_name:
> + * @typename: The QOM typename to obtain the class for.
> + *
> + * Returns: The class for @typename.
> + */
> ObjectClass *object_class_by_name(const char *typename);
Unrelated documentation addition. Please split it into its own patch.
Otherwise okay.
Andreas
>
> void object_class_foreach(void (*fn)(ObjectClass *klass, void *opaque),
> diff --git a/qom/object.c b/qom/object.c
> index e721fc2..3e9fed7 100644
> --- a/qom/object.c
> +++ b/qom/object.c
> @@ -545,6 +545,19 @@ ObjectClass *object_class_by_name(const char *typename)
> return type->class;
> }
>
> +ObjectClass *object_class_get_parent(ObjectClass *class)
> +{
> + TypeImpl *type = type_get_parent(class->type);
> +
> + if (!type) {
> + return NULL;
> + }
> +
> + type_initialize(type);
> +
> + return type->class;
> +}
> +
> typedef struct OCFData
> {
> void (*fn)(ObjectClass *klass, void *opaque);
--
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany
GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer; HRB 16746 AG Nürnberg
- [Qemu-devel] [PATCH 00/24] qdev properties final installment: push, push!, Paolo Bonzini, 2012/04/11
- [Qemu-devel] [PATCH v2 01/24] qom: add object_class_get_parent, Paolo Bonzini, 2012/04/11
- Re: [Qemu-devel] [PATCH v2 01/24] qom: add object_class_get_parent,
Andreas Färber <=
- [Qemu-devel] [PATCH v2 02/24] qom: add object_child_foreach, Paolo Bonzini, 2012/04/11
- [Qemu-devel] [PATCH v2 03/24] qom: add class_base_init, Paolo Bonzini, 2012/04/11
- [Qemu-devel] [PATCH v2 04/24] qom: make Object a type, Paolo Bonzini, 2012/04/11
- Re: [Qemu-devel] [PATCH v2 04/24] qom: make Object a type, Andreas Färber, 2012/04/12
- [Qemu-devel] [PATCH v2 05/24] qdev: push "type" property up to Object, Paolo Bonzini, 2012/04/11