qom: add container_get

This is QOM "mkdir -p".  It is useful when referring to
container objects such as "/machine".

Reviewed-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
This commit is contained in:
Paolo Bonzini 2012-03-27 18:38:45 +02:00 committed by Anthony Liguori
parent cefc898806
commit a612b2a663
4 changed files with 66 additions and 22 deletions

View file

@ -836,6 +836,18 @@ Object *object_resolve_path(const char *path, bool *ambiguous);
Object *object_resolve_path_type(const char *path, const char *typename,
bool *ambiguous);
/**
* object_resolve_path_component:
* @parent: the object in which to resolve the path
* @part: the component to resolve.
*
* This is similar to object_resolve_path with an absolute path, but it
* only resolves one element (@part) and takes the others from @parent.
*
* Returns: The resolved object or NULL on path lookup failure.
*/
Object *object_resolve_path_component(Object *parent, gchar *part);
/**
* object_property_add_child:
* @obj: the object to add a property to
@ -891,4 +903,16 @@ void object_property_add_str(Object *obj, const char *name,
void (*set)(Object *, const char *, struct Error **),
struct Error **errp);
/**
* container_get:
* @path: path to the container
*
* Return a container object whose path is @path. Create more containers
* along the path if necessary.
*
* Returns: the container object.
*/
Object *container_get(const char *path);
#endif