mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 15:23:53 -06:00
vmstate: add qom interface to get id
Add an interface to get the instance id, instead of depending on Device and qdev_get_dev_path(). Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Acked-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
This commit is contained in:
parent
b0b74e1f17
commit
107b59698f
8 changed files with 85 additions and 0 deletions
40
include/hw/vmstate-if.h
Normal file
40
include/hw/vmstate-if.h
Normal file
|
@ -0,0 +1,40 @@
|
|||
/*
|
||||
* VMState interface
|
||||
*
|
||||
* Copyright (c) 2009-2019 Red Hat Inc
|
||||
* This work is licensed under the terms of the GNU GPL, version 2 or later.
|
||||
* See the COPYING file in the top-level directory.
|
||||
*/
|
||||
|
||||
#ifndef VMSTATE_IF_H
|
||||
#define VMSTATE_IF_H
|
||||
|
||||
#include "qom/object.h"
|
||||
|
||||
#define TYPE_VMSTATE_IF "vmstate-if"
|
||||
|
||||
#define VMSTATE_IF_CLASS(klass) \
|
||||
OBJECT_CLASS_CHECK(VMStateIfClass, (klass), TYPE_VMSTATE_IF)
|
||||
#define VMSTATE_IF_GET_CLASS(obj) \
|
||||
OBJECT_GET_CLASS(VMStateIfClass, (obj), TYPE_VMSTATE_IF)
|
||||
#define VMSTATE_IF(obj) \
|
||||
INTERFACE_CHECK(VMStateIf, (obj), TYPE_VMSTATE_IF)
|
||||
|
||||
typedef struct VMStateIf VMStateIf;
|
||||
|
||||
typedef struct VMStateIfClass {
|
||||
InterfaceClass parent_class;
|
||||
|
||||
char * (*get_id)(VMStateIf *obj);
|
||||
} VMStateIfClass;
|
||||
|
||||
static inline char *vmstate_if_get_id(VMStateIf *vmif)
|
||||
{
|
||||
if (!vmif) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return VMSTATE_IF_GET_CLASS(vmif)->get_id(vmif);
|
||||
}
|
||||
|
||||
#endif /* VMSTATE_IF_H */
|
Loading…
Add table
Add a link
Reference in a new issue