]>
Commit | Line | Data |
---|---|---|
1 | #ifndef QEMU_TYPEDEFS_H | |
2 | #define QEMU_TYPEDEFS_H | |
3 | ||
4 | /* | |
5 | * This header is for selectively avoiding #include just to get a | |
6 | * typedef name. | |
7 | * | |
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. | |
12 | * | |
13 | * You can break such cycles and unwanted dependencies by declaring | |
14 | * the typedef name here. | |
15 | * | |
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. | |
18 | */ | |
19 | ||
20 | /* | |
21 | * Incomplete struct types | |
22 | * Please keep this list in case-insensitive alphabetical order. | |
23 | */ | |
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 TCGCPUOps TCGCPUOps; | |
135 | typedef struct TCGHelperInfo TCGHelperInfo; | |
136 | typedef struct TranslationBlock TranslationBlock; | |
137 | typedef struct VirtIODevice VirtIODevice; | |
138 | typedef struct Visitor Visitor; | |
139 | typedef struct VMChangeStateEntry VMChangeStateEntry; | |
140 | typedef struct VMStateDescription VMStateDescription; | |
141 | ||
142 | /* | |
143 | * Pointer types | |
144 | * Such typedefs should be limited to cases where the typedef's users | |
145 | * are oblivious of its "pointer-ness". | |
146 | * Please keep this list in case-insensitive alphabetical order. | |
147 | */ | |
148 | typedef struct IRQState *qemu_irq; | |
149 | ||
150 | /* | |
151 | * Function types | |
152 | */ | |
153 | typedef void SaveStateHandler(QEMUFile *f, void *opaque); | |
154 | typedef int LoadStateHandler(QEMUFile *f, void *opaque, int version_id); | |
155 | typedef void (*qemu_irq_handler)(void *opaque, int n, int level); | |
156 | ||
157 | #endif /* QEMU_TYPEDEFS_H */ |