diff options
author | Bharata B Rao <bharata@linux.vnet.ibm.com> | 2016-06-10 06:29:00 +0530 |
---|---|---|
committer | David Gibson <david@gibson.dropbear.id.au> | 2016-06-17 16:33:48 +1000 |
commit | 3f97b53a682d2595747c926c00d78b9d406f1be0 (patch) | |
tree | 0f3e8c729f12696b1048cd33b726f6ae86bafc75 | |
parent | aab99135b63522267c6fdae04712cb2f02c8c7de (diff) |
qom: API to get instance_size of a type
Add an API object_type_get_size(const char *typename) that returns the
instance_size of the give typename.
Signed-off-by: Bharata B Rao <bharata@linux.vnet.ibm.com>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
-rw-r--r-- | include/qom/object.h | 8 | ||||
-rw-r--r-- | qom/object.c | 8 |
2 files changed, 15 insertions, 1 deletions
diff --git a/include/qom/object.h b/include/qom/object.h index 99de539e7c..2f8ac47c7c 100644 --- a/include/qom/object.h +++ b/include/qom/object.h @@ -1607,5 +1607,11 @@ int object_child_foreach_recursive(Object *obj, */ Object *container_get(Object *root, const char *path); - +/** + * object_type_get_instance_size: + * @typename: Name of the Type whose instance_size is required + * + * Returns the instance_size of the given @typename. + */ +size_t object_type_get_instance_size(const char *typename); #endif diff --git a/qom/object.c b/qom/object.c index 3bc8a009bb..0311414c0a 100644 --- a/qom/object.c +++ b/qom/object.c @@ -202,6 +202,14 @@ static size_t type_object_get_size(TypeImpl *ti) return 0; } +size_t object_type_get_instance_size(const char *typename) +{ + TypeImpl *type = type_get_by_name(typename); + + g_assert(type != NULL); + return type_object_get_size(type); +} + static bool type_is_ancestor(TypeImpl *type, TypeImpl *target_type) { assert(target_type); |