[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH for-next v2 01/22] object: Add OBJECT_GET_PARENT
From: |
Peter Crosthwaite |
Subject: |
Re: [Qemu-devel] [PATCH for-next v2 01/22] object: Add OBJECT_GET_PARENT_CLASS() macro |
Date: |
Wed, 7 Aug 2013 11:50:04 +1000 |
On Thu, Aug 1, 2013 at 12:17 PM, Andreas Färber <address@hidden> wrote:
> The object argument is currently unused and may be used to optimize the
> class lookup when needed.
>
> Inspired-by: Peter Crosthwaite <address@hidden>
> Signed-off-by: Andreas Färber <address@hidden>
Reviewed-by: Peter Crosthwaite <address@hidden>
One minor nit about comments below but im happy as is. Thanks.
> ---
> include/qom/object.h | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/include/qom/object.h b/include/qom/object.h
> index 23fc048..a8e71dc 100644
> --- a/include/qom/object.h
> +++ b/include/qom/object.h
> @@ -511,6 +511,16 @@ struct TypeInfo
> OBJECT_CLASS_CHECK(class, object_get_class(OBJECT(obj)), name)
>
> /**
> + * OBJECT_GET_PARENT_CLASS:
> + * @obj: The object to obtain the parent class for.
> + * @name: The QOM typename of @obj.
This is actually a little more complicated than this comment suggests.
You are actually obtaining the parent class of @name for use by
object@ obj. @name only needs to be an ancestor of @obj's concrete
type and not necessarily the concrete class.
Regards,
Peter
> + *
> + * Returns the parent class for a given object of a specific class.
> + */
> +#define OBJECT_GET_PARENT_CLASS(obj, name) \
> + object_class_get_parent(object_class_by_name(name))
> +
> +/**
> * InterfaceInfo:
> * @type: The name of the interface.
> *
> --
> 1.8.1.4
>
>
- Re: [Qemu-devel] [PATCH for-next v2 01/22] object: Add OBJECT_GET_PARENT_CLASS() macro,
Peter Crosthwaite <=