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 AccelState AccelState
;
25 typedef struct AdapterInfo AdapterInfo
;
26 typedef struct AddressSpace AddressSpace
;
27 typedef struct AioContext AioContext
;
28 typedef struct Aml Aml
;
29 typedef struct AnnounceTimer AnnounceTimer
;
30 typedef struct ArchCPU ArchCPU
;
31 typedef struct BdrvDirtyBitmap BdrvDirtyBitmap
;
32 typedef struct BdrvDirtyBitmapIter BdrvDirtyBitmapIter
;
33 typedef struct BlockBackend BlockBackend
;
34 typedef struct BlockBackendRootState BlockBackendRootState
;
35 typedef struct BlockDriverState BlockDriverState
;
36 typedef struct BusClass BusClass
;
37 typedef struct BusState BusState
;
38 typedef struct Chardev Chardev
;
39 typedef struct Clock Clock
;
40 typedef struct CompatProperty CompatProperty
;
41 typedef struct ConfidentialGuestSupport ConfidentialGuestSupport
;
42 typedef struct CPUAddressSpace CPUAddressSpace
;
43 typedef struct CPUArchState CPUArchState
;
44 typedef struct CPUJumpCache CPUJumpCache
;
45 typedef struct CPUState CPUState
;
46 typedef struct CPUTLBEntryFull CPUTLBEntryFull
;
47 typedef struct DeviceListener DeviceListener
;
48 typedef struct DeviceState DeviceState
;
49 typedef struct DirtyBitmapSnapshot DirtyBitmapSnapshot
;
50 typedef struct DisplayChangeListener DisplayChangeListener
;
51 typedef struct DriveInfo DriveInfo
;
52 typedef struct Error Error
;
53 typedef struct EventNotifier EventNotifier
;
54 typedef struct FlatView FlatView
;
55 typedef struct FWCfgEntry FWCfgEntry
;
56 typedef struct FWCfgIoState FWCfgIoState
;
57 typedef struct FWCfgMemState FWCfgMemState
;
58 typedef struct FWCfgState FWCfgState
;
59 typedef struct HostMemoryBackend HostMemoryBackend
;
60 typedef struct I2CBus I2CBus
;
61 typedef struct I2SCodec I2SCodec
;
62 typedef struct IOMMUMemoryRegion IOMMUMemoryRegion
;
63 typedef struct ISABus ISABus
;
64 typedef struct ISADevice ISADevice
;
65 typedef struct IsaDma IsaDma
;
66 typedef struct JSONWriter JSONWriter
;
67 typedef struct MACAddr MACAddr
;
68 typedef struct MachineClass MachineClass
;
69 typedef struct MachineState MachineState
;
70 typedef struct MemoryListener MemoryListener
;
71 typedef struct MemoryMappingList MemoryMappingList
;
72 typedef struct MemoryRegion MemoryRegion
;
73 typedef struct MemoryRegionCache MemoryRegionCache
;
74 typedef struct MemoryRegionSection MemoryRegionSection
;
75 typedef struct MigrationIncomingState MigrationIncomingState
;
76 typedef struct MigrationState MigrationState
;
77 typedef struct Monitor Monitor
;
78 typedef struct MonitorDef MonitorDef
;
79 typedef struct MSIMessage MSIMessage
;
80 typedef struct NetClientState NetClientState
;
81 typedef struct NetFilterState NetFilterState
;
82 typedef struct NICInfo NICInfo
;
83 typedef struct NodeInfo NodeInfo
;
84 typedef struct NumaNodeMem NumaNodeMem
;
85 typedef struct Object Object
;
86 typedef struct ObjectClass ObjectClass
;
87 typedef struct PCIBridge PCIBridge
;
88 typedef struct PCIBus PCIBus
;
89 typedef struct PCIDevice PCIDevice
;
90 typedef struct PCIEAERErr PCIEAERErr
;
91 typedef struct PCIEAERLog PCIEAERLog
;
92 typedef struct PCIEAERMsg PCIEAERMsg
;
93 typedef struct PCIESriovPF PCIESriovPF
;
94 typedef struct PCIESriovVF PCIESriovVF
;
95 typedef struct PCIEPort PCIEPort
;
96 typedef struct PCIESlot PCIESlot
;
97 typedef struct PCIExpressDevice PCIExpressDevice
;
98 typedef struct PCIExpressHost PCIExpressHost
;
99 typedef struct PCIHostDeviceAddress PCIHostDeviceAddress
;
100 typedef struct PCIHostState PCIHostState
;
101 typedef struct PICCommonState PICCommonState
;
102 typedef struct PostcopyDiscardState PostcopyDiscardState
;
103 typedef struct Property Property
;
104 typedef struct PropertyInfo PropertyInfo
;
105 typedef struct QBool QBool
;
106 typedef struct QDict QDict
;
107 typedef struct QEMUBH QEMUBH
;
108 typedef struct QemuConsole QemuConsole
;
109 typedef struct QEMUFile QEMUFile
;
110 typedef struct QemuLockable QemuLockable
;
111 typedef struct QemuMutex QemuMutex
;
112 typedef struct QemuOpt QemuOpt
;
113 typedef struct QemuOpts QemuOpts
;
114 typedef struct QemuOptsList QemuOptsList
;
115 typedef struct QEMUSGList QEMUSGList
;
116 typedef struct QemuSpin QemuSpin
;
117 typedef struct QEMUTimer QEMUTimer
;
118 typedef struct QEMUTimerListGroup QEMUTimerListGroup
;
119 typedef struct QList QList
;
120 typedef struct QNull QNull
;
121 typedef struct QNum QNum
;
122 typedef struct QObject QObject
;
123 typedef struct QString QString
;
124 typedef struct RAMBlock RAMBlock
;
125 typedef struct Range Range
;
126 typedef struct ReservedRegion ReservedRegion
;
127 typedef struct SavedIOTLB SavedIOTLB
;
128 typedef struct SHPCDevice SHPCDevice
;
129 typedef struct SSIBus SSIBus
;
130 typedef struct TranslationBlock TranslationBlock
;
131 typedef struct VirtIODevice VirtIODevice
;
132 typedef struct Visitor Visitor
;
133 typedef struct VMChangeStateEntry VMChangeStateEntry
;
134 typedef struct VMStateDescription VMStateDescription
;
135 typedef struct DumpState DumpState
;
136 typedef struct GraphicHwOps GraphicHwOps
;
137 typedef struct QEMUCursor QEMUCursor
;
141 * Such typedefs should be limited to cases where the typedef's users
142 * are oblivious of its "pointer-ness".
143 * Please keep this list in case-insensitive alphabetical order.
145 typedef struct IRQState
*qemu_irq
;
150 typedef void SaveStateHandler(QEMUFile
*f
, void *opaque
);
151 typedef int LoadStateHandler(QEMUFile
*f
, void *opaque
, int version_id
);
152 typedef void (*qemu_irq_handler
)(void *opaque
, int n
, int level
);
154 #endif /* QEMU_TYPEDEFS_H */