2
0

qemu-spice.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /*
  2. * Copyright (C) 2010 Red Hat, Inc.
  3. *
  4. * This program is free software; you can redistribute it and/or
  5. * modify it under the terms of the GNU General Public License as
  6. * published by the Free Software Foundation; either version 2 or
  7. * (at your option) version 3 of the License.
  8. *
  9. * This program is distributed in the hope that it will be useful,
  10. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  12. * GNU General Public License for more details.
  13. *
  14. * You should have received a copy of the GNU General Public License
  15. * along with this program; if not, see <http://www.gnu.org/licenses/>.
  16. */
  17. #ifndef QEMU_SPICE_H
  18. #define QEMU_SPICE_H
  19. #include "qapi/error.h"
  20. #include "ui/qemu-spice-module.h"
  21. #ifdef CONFIG_SPICE
  22. #include <spice.h>
  23. #include "qemu/config-file.h"
  24. void qemu_spice_input_init(void);
  25. void qemu_spice_display_init(void);
  26. void qemu_spice_display_init_done(void);
  27. bool qemu_spice_have_display_interface(QemuConsole *con);
  28. int qemu_spice_add_display_interface(QXLInstance *qxlin, QemuConsole *con);
  29. int qemu_spice_migrate_info(const char *hostname, int port, int tls_port,
  30. const char *subject);
  31. #if SPICE_SERVER_VERSION >= 0x000f00 /* release 0.15.0 */
  32. #define SPICE_HAS_ATTACHED_WORKER 1
  33. #else
  34. #define SPICE_HAS_ATTACHED_WORKER 0
  35. #endif
  36. #else /* CONFIG_SPICE */
  37. #include "qemu/error-report.h"
  38. #define spice_displays 0
  39. #endif /* CONFIG_SPICE */
  40. static inline bool qemu_using_spice(Error **errp)
  41. {
  42. if (!using_spice) {
  43. error_set(errp, ERROR_CLASS_DEVICE_NOT_ACTIVE,
  44. "SPICE is not in use");
  45. return false;
  46. }
  47. return true;
  48. }
  49. #endif /* QEMU_SPICE_H */