qemu-devel
[Top][All Lists]
Advanced

[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



reply via email to

[Prev in Thread] Current Thread [Next in Thread]