qemu/include/hw/vmstate-if.h
<<
>>
Prefs
   1/*
   2 * VMState interface
   3 *
   4 * Copyright (c) 2009-2019 Red Hat Inc
   5 * This work is licensed under the terms of the GNU GPL, version 2 or later.
   6 * See the COPYING file in the top-level directory.
   7 */
   8
   9#ifndef VMSTATE_IF_H
  10#define VMSTATE_IF_H
  11
  12#include "qom/object.h"
  13
  14#define TYPE_VMSTATE_IF "vmstate-if"
  15
  16typedef struct VMStateIfClass VMStateIfClass;
  17DECLARE_CLASS_CHECKERS(VMStateIfClass, VMSTATE_IF,
  18                       TYPE_VMSTATE_IF)
  19#define VMSTATE_IF(obj)                             \
  20    INTERFACE_CHECK(VMStateIf, (obj), TYPE_VMSTATE_IF)
  21
  22typedef struct VMStateIf VMStateIf;
  23
  24struct VMStateIfClass {
  25    InterfaceClass parent_class;
  26
  27    char * (*get_id)(VMStateIf *obj);
  28};
  29
  30static inline char *vmstate_if_get_id(VMStateIf *vmif)
  31{
  32    if (!vmif) {
  33        return NULL;
  34    }
  35
  36    return VMSTATE_IF_GET_CLASS(vmif)->get_id(vmif);
  37}
  38
  39#endif /* VMSTATE_IF_H */
  40