1 #ifndef QEMU_TYPEDEFS_H
2 #define QEMU_TYPEDEFS_H
5 * This header is for selectively avoiding #include just to get a
8 * Declaring a typedef name in its "obvious" place can result in
9 * inclusion cycles, in particular for complete struct and union
10 * types that need more types for their members. It can also result
11 * in headers pulling in many more headers, slowing down builds.
13 * You can break such cycles and unwanted dependencies by declaring
14 * the typedef name here.
16 * For struct types used in only a few headers, judicious use of the
17 * struct tag instead of the typedef name is commonly preferable.
21 * Incomplete struct types
22 * Please keep this list in case-insensitive alphabetical order.
24 typedef struct AccelCPUState AccelCPUState
;
25 typedef struct AccelState AccelState
;
26 typedef struct AdapterInfo AdapterInfo
;
27 typedef struct AddressSpace AddressSpace
;
28 typedef struct AioContext AioContext
;
29 typedef struct Aml Aml
;
30 typedef struct AnnounceTimer AnnounceTimer
;
31 typedef struct ArchCPU ArchCPU
;
32 typedef struct BdrvDirtyBitmap BdrvDirtyBitmap
;
33 typedef struct BdrvDirtyBitmapIter BdrvDirtyBitmapIter
;
34 typedef struct BlockBackend BlockBackend
;
35 typedef struct BlockBackendRootState BlockBackendRootState
;
36 typedef struct BlockDriverState BlockDriverState
;
37 typedef struct BusClass BusClass
;
38 typedef struct BusState BusState
;
39 typedef struct Chardev Chardev
;
40 typedef struct Clock Clock
;
41 typedef struct CompatProperty CompatProperty
;
42 typedef struct ConfidentialGuestSupport ConfidentialGuestSupport
;
43 typedef struct CPUAddressSpace CPUAddressSpace
;
44 typedef struct CPUArchState CPUArchState
;
45 typedef struct CpuInfoFast CpuInfoFast
;
46 typedef struct CPUJumpCache CPUJumpCache
;
47 typedef struct CPUState CPUState
;
48 typedef struct CPUTLBEntryFull CPUTLBEntryFull
;
49 typedef struct DeviceListener DeviceListener
;
50 typedef struct DeviceState DeviceState
;
51 typedef struct DirtyBitmapSnapshot DirtyBitmapSnapshot
;
52 typedef struct DisplayChangeListener DisplayChangeListener
;
53 typedef struct DriveInfo DriveInfo
;
54 typedef struct DumpState DumpState
;
55 typedef struct Error Error
;
56 typedef struct EventNotifier EventNotifier
;
57 typedef struct FlatView FlatView
;
58 typedef struct FWCfgEntry FWCfgEntry
;
59 typedef struct FWCfgIoState FWCfgIoState
;
60 typedef struct FWCfgMemState FWCfgMemState
;
61 typedef struct FWCfgState FWCfgState
;
62 typedef struct GraphicHwOps GraphicHwOps
;
63 typedef struct HostMemoryBackend HostMemoryBackend
;
64 typedef struct I2CBus I2CBus
;
65 typedef struct I2SCodec I2SCodec
;
66 typedef struct IOMMUMemoryRegion IOMMUMemoryRegion
;
67 typedef struct ISABus ISABus
;
68 typedef struct ISADevice ISADevice
;
69 typedef struct IsaDma IsaDma
;
70 typedef struct JSONWriter JSONWriter
;
71 typedef struct MACAddr MACAddr
;
72 typedef struct MachineClass MachineClass
;
73 typedef struct MachineState MachineState
;
74 typedef struct MemoryListener MemoryListener
;
75 typedef struct MemoryMappingList MemoryMappingList
;
76 typedef struct MemoryRegion MemoryRegion
;
77 typedef struct MemoryRegionCache MemoryRegionCache
;
78 typedef struct MemoryRegionSection MemoryRegionSection
;
79 typedef struct MigrationIncomingState MigrationIncomingState
;
80 typedef struct MigrationState MigrationState
;
81 typedef struct Monitor Monitor
;
82 typedef struct MonitorDef MonitorDef
;
83 typedef struct MSIMessage MSIMessage
;
84 typedef struct NetClientState NetClientState
;
85 typedef struct NetFilterState NetFilterState
;
86 typedef struct NICInfo NICInfo
;
87 typedef struct NodeInfo NodeInfo
;
88 typedef struct NumaNodeMem NumaNodeMem
;
89 typedef struct Object Object
;
90 typedef struct ObjectClass ObjectClass
;
91 typedef struct PCIBridge PCIBridge
;
92 typedef struct PCIBus PCIBus
;
93 typedef struct PCIDevice PCIDevice
;
94 typedef struct PCIEAERErr PCIEAERErr
;
95 typedef struct PCIEAERLog PCIEAERLog
;
96 typedef struct PCIEAERMsg PCIEAERMsg
;
97 typedef struct PCIEPort PCIEPort
;
98 typedef struct PCIESlot PCIESlot
;
99 typedef struct PCIESriovPF PCIESriovPF
;
100 typedef struct PCIESriovVF PCIESriovVF
;
101 typedef struct PCIExpressDevice PCIExpressDevice
;
102 typedef struct PCIExpressHost PCIExpressHost
;
103 typedef struct PCIHostDeviceAddress PCIHostDeviceAddress
;
104 typedef struct PCIHostState PCIHostState
;
105 typedef struct PICCommonState PICCommonState
;
106 typedef struct PostcopyDiscardState PostcopyDiscardState
;
107 typedef struct Property Property
;
108 typedef struct PropertyInfo PropertyInfo
;
109 typedef struct QBool QBool
;
110 typedef struct QDict QDict
;
111 typedef struct QEMUBH QEMUBH
;
112 typedef struct QemuConsole QemuConsole
;
113 typedef struct QEMUCursor QEMUCursor
;
114 typedef struct QEMUFile QEMUFile
;
115 typedef struct QemuLockable QemuLockable
;
116 typedef struct QemuMutex QemuMutex
;
117 typedef struct QemuOpt QemuOpt
;
118 typedef struct QemuOpts QemuOpts
;
119 typedef struct QemuOptsList QemuOptsList
;
120 typedef struct QEMUSGList QEMUSGList
;
121 typedef struct QemuSpin QemuSpin
;
122 typedef struct QEMUTimer QEMUTimer
;
123 typedef struct QEMUTimerListGroup QEMUTimerListGroup
;
124 typedef struct QList QList
;
125 typedef struct QNull QNull
;
126 typedef struct QNum QNum
;
127 typedef struct QObject QObject
;
128 typedef struct QString QString
;
129 typedef struct RAMBlock RAMBlock
;
130 typedef struct Range Range
;
131 typedef struct ReservedRegion ReservedRegion
;
132 typedef struct SHPCDevice SHPCDevice
;
133 typedef struct SSIBus SSIBus
;
134 typedef struct TCGHelperInfo TCGHelperInfo
;
135 typedef struct TranslationBlock TranslationBlock
;
136 typedef struct VirtIODevice VirtIODevice
;
137 typedef struct Visitor Visitor
;
138 typedef struct VMChangeStateEntry VMChangeStateEntry
;
139 typedef struct VMStateDescription VMStateDescription
;
143 * Such typedefs should be limited to cases where the typedef's users
144 * are oblivious of its "pointer-ness".
145 * Please keep this list in case-insensitive alphabetical order.
147 typedef struct IRQState
*qemu_irq
;
152 typedef void SaveStateHandler(QEMUFile
*f
, void *opaque
);
153 typedef int LoadStateHandler(QEMUFile
*f
, void *opaque
, int version_id
);
154 typedef void (*qemu_irq_handler
)(void *opaque
, int n
, int level
);
156 #endif /* QEMU_TYPEDEFS_H */