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>
master
Bharata B Rao 2016-06-10 06:29:00 +05:30 committed by David Gibson
parent aab99135b6
commit 3f97b53a68
2 changed files with 15 additions and 1 deletions

View File

@ -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

View File

@ -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);