ui/console: declare console types in console.h
We are going to split the console.c unit next, and implement separately. But we need to check the underlying type in various places. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> Message-Id: <20230830093843.3531473-36-marcandre.lureau@redhat.com>
This commit is contained in:
parent
742a6896ea
commit
8c6381d846
@ -12,6 +12,27 @@
|
|||||||
# include "ui/shader.h"
|
# include "ui/shader.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#define TYPE_QEMU_CONSOLE "qemu-console"
|
||||||
|
OBJECT_DECLARE_TYPE(QemuConsole, QemuConsoleClass, QEMU_CONSOLE)
|
||||||
|
|
||||||
|
#define TYPE_QEMU_GRAPHIC_CONSOLE "qemu-graphic-console"
|
||||||
|
OBJECT_DECLARE_SIMPLE_TYPE(QemuGraphicConsole, QEMU_GRAPHIC_CONSOLE)
|
||||||
|
|
||||||
|
#define TYPE_QEMU_TEXT_CONSOLE "qemu-text-console"
|
||||||
|
OBJECT_DECLARE_SIMPLE_TYPE(QemuTextConsole, QEMU_TEXT_CONSOLE)
|
||||||
|
|
||||||
|
#define TYPE_QEMU_FIXED_TEXT_CONSOLE "qemu-fixed-text-console"
|
||||||
|
OBJECT_DECLARE_SIMPLE_TYPE(QemuFixedTextConsole, QEMU_FIXED_TEXT_CONSOLE)
|
||||||
|
|
||||||
|
#define QEMU_IS_GRAPHIC_CONSOLE(c) \
|
||||||
|
object_dynamic_cast(OBJECT(c), TYPE_QEMU_GRAPHIC_CONSOLE)
|
||||||
|
|
||||||
|
#define QEMU_IS_TEXT_CONSOLE(c) \
|
||||||
|
object_dynamic_cast(OBJECT(c), TYPE_QEMU_TEXT_CONSOLE)
|
||||||
|
|
||||||
|
#define QEMU_IS_FIXED_TEXT_CONSOLE(c) \
|
||||||
|
object_dynamic_cast(OBJECT(c), TYPE_QEMU_FIXED_TEXT_CONSOLE)
|
||||||
|
|
||||||
/* keyboard/mouse support */
|
/* keyboard/mouse support */
|
||||||
|
|
||||||
#define MOUSE_EVENT_LBUTTON 0x01
|
#define MOUSE_EVENT_LBUTTON 0x01
|
||||||
@ -112,10 +133,6 @@ void console_handle_touch_event(QemuConsole *con,
|
|||||||
Error **errp);
|
Error **errp);
|
||||||
/* consoles */
|
/* consoles */
|
||||||
|
|
||||||
#define TYPE_QEMU_CONSOLE "qemu-console"
|
|
||||||
OBJECT_DECLARE_TYPE(QemuConsole, QemuConsoleClass, QEMU_CONSOLE)
|
|
||||||
|
|
||||||
|
|
||||||
struct QemuConsoleClass {
|
struct QemuConsoleClass {
|
||||||
ObjectClass parent_class;
|
ObjectClass parent_class;
|
||||||
};
|
};
|
||||||
|
15
ui/console.c
15
ui/console.c
@ -106,13 +106,8 @@ typedef struct QemuGraphicConsole {
|
|||||||
|
|
||||||
typedef QemuConsoleClass QemuGraphicConsoleClass;
|
typedef QemuConsoleClass QemuGraphicConsoleClass;
|
||||||
|
|
||||||
#define TYPE_QEMU_GRAPHIC_CONSOLE "qemu-graphic-console"
|
|
||||||
OBJECT_DECLARE_SIMPLE_TYPE(QemuGraphicConsole, QEMU_GRAPHIC_CONSOLE)
|
|
||||||
OBJECT_DEFINE_TYPE(QemuGraphicConsole, qemu_graphic_console, QEMU_GRAPHIC_CONSOLE, QEMU_CONSOLE)
|
OBJECT_DEFINE_TYPE(QemuGraphicConsole, qemu_graphic_console, QEMU_GRAPHIC_CONSOLE, QEMU_CONSOLE)
|
||||||
|
|
||||||
#define QEMU_IS_GRAPHIC_CONSOLE(c) \
|
|
||||||
object_dynamic_cast(OBJECT(c), TYPE_QEMU_GRAPHIC_CONSOLE)
|
|
||||||
|
|
||||||
typedef struct QemuTextConsole {
|
typedef struct QemuTextConsole {
|
||||||
QemuConsole parent;
|
QemuConsole parent;
|
||||||
|
|
||||||
@ -139,26 +134,16 @@ typedef struct QemuTextConsole {
|
|||||||
|
|
||||||
typedef QemuConsoleClass QemuTextConsoleClass;
|
typedef QemuConsoleClass QemuTextConsoleClass;
|
||||||
|
|
||||||
#define TYPE_QEMU_TEXT_CONSOLE "qemu-text-console"
|
|
||||||
OBJECT_DECLARE_SIMPLE_TYPE(QemuTextConsole, QEMU_TEXT_CONSOLE)
|
|
||||||
OBJECT_DEFINE_TYPE(QemuTextConsole, qemu_text_console, QEMU_TEXT_CONSOLE, QEMU_CONSOLE)
|
OBJECT_DEFINE_TYPE(QemuTextConsole, qemu_text_console, QEMU_TEXT_CONSOLE, QEMU_CONSOLE)
|
||||||
|
|
||||||
#define QEMU_IS_TEXT_CONSOLE(c) \
|
|
||||||
object_dynamic_cast(OBJECT(c), TYPE_QEMU_TEXT_CONSOLE)
|
|
||||||
|
|
||||||
typedef struct QemuFixedTextConsole {
|
typedef struct QemuFixedTextConsole {
|
||||||
QemuTextConsole parent;
|
QemuTextConsole parent;
|
||||||
} QemuFixedTextConsole;
|
} QemuFixedTextConsole;
|
||||||
|
|
||||||
typedef QemuTextConsoleClass QemuFixedTextConsoleClass;
|
typedef QemuTextConsoleClass QemuFixedTextConsoleClass;
|
||||||
|
|
||||||
#define TYPE_QEMU_FIXED_TEXT_CONSOLE "qemu-fixed-text-console"
|
|
||||||
OBJECT_DECLARE_SIMPLE_TYPE(QemuFixedTextConsole, QEMU_FIXED_TEXT_CONSOLE)
|
|
||||||
OBJECT_DEFINE_TYPE(QemuFixedTextConsole, qemu_fixed_text_console, QEMU_FIXED_TEXT_CONSOLE, QEMU_TEXT_CONSOLE)
|
OBJECT_DEFINE_TYPE(QemuFixedTextConsole, qemu_fixed_text_console, QEMU_FIXED_TEXT_CONSOLE, QEMU_TEXT_CONSOLE)
|
||||||
|
|
||||||
#define QEMU_IS_FIXED_TEXT_CONSOLE(c) \
|
|
||||||
object_dynamic_cast(OBJECT(c), TYPE_QEMU_FIXED_TEXT_CONSOLE)
|
|
||||||
|
|
||||||
struct VCChardev {
|
struct VCChardev {
|
||||||
Chardev parent;
|
Chardev parent;
|
||||||
QemuTextConsole *console;
|
QemuTextConsole *console;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user