summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/emufwd.h
blob: 9795506786514ba32fe7a994202d8af8d4b35396 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
// license:BSD-3-Clause
// copyright-holders:Vas Crabb
/**********************************************************************
 * emufwd.h
 *
 * Forward declarations for MAME famework.
 *
 * Please place forward declarations here rather than littering them
 * throughout headers in src/emu.  It makes it much easier to update
 * them and remove obsolete ones.
 **********************************************************************/
#ifndef MAME_EMU_EMUFWD_H
#define MAME_EMU_EMUFWD_H

#pragma once

#include <type_traits>


//----------------------------------
// 3rdparty
//----------------------------------

// declared in expat.h
struct XML_ParserStruct;



//----------------------------------
// osd
//----------------------------------

// declared in modules/output/output_module.h
class output_module;

// declared in osdepend.h
class osd_font;
class osd_interface;



//----------------------------------
// lib/util
//----------------------------------

// declared in aviio.h
class avi_file;

// declared in chd.h
class chd_file;

// declared in unzip.h
namespace util { class archive_file; }

// declared in wavwrite.h
struct wav_file;

// declared in xmlfile.h
namespace util { namespace xml { class data_node; } }



//----------------------------------
// emu
//----------------------------------

// declared in addrmap.h
class address_map;
class address_map_entry;

// declared in bookkeeping.h
class bookkeeping_manager;

// declared in config.h
enum class config_type;
class configuration_manager;

// declared in crsshair.h
class crosshair_manager;

// declared in debug/debugcmd.h
class debugger_commands;

// declared in debug/debugcmd.h
class debugger_console;

// declared in debug/debugcpu.h
class debugger_cpu;
class device_debug;

// declared in debug/debugvw.h
class debug_view;
class debug_view_manager;

// declared in debug/express.h
class parsed_expression;
class symbol_table;

// declared in debugger.h
class debugger_manager;

// declared in devcb.h
class devcb_base;
template <typename Input, std::make_unsigned_t<Input> DefaultMask> class devcb_write;

// declared in devfind.h
class finder_base;
template <class DeviceClass, bool Required> class device_finder;

// declared in device.h
class device_interface;
class device_t;

// declared in didisasm.h
class device_disasm_interface;

// declared in diexec.h
class device_execute_interface;

// declared in digfx.h
struct gfx_decode_entry;

// declared in diimage.h
class device_image_interface;

// declared in dimemory.h
class device_memory_interface;

// declared in dipalette.h
class device_palette_interface;

// declared in distate.h
class device_state_interface;

// declared in drawgfx.h
class gfx_element;

// declared in driver.h
class driver_device;

// declared in emumem.h
class address_space;
template<int Width, int AddrShift, int Endian> class memory_access_cache;
class memory_bank;
class memory_block;
class memory_manager;
class memory_region;
class memory_share;

// declared in emuopts.h
class emu_options;

// declared in gamedrv.h
class game_driver;

// declared in input.h
class input_manager;

// declared in inputdev.h
class input_class;
class input_device;
class input_device_item;

// declared in image.h
class image_manager;

// declared in ioport.h
class analog_field;
struct input_device_default;
class ioport_field;
struct ioport_field_live;
class ioport_list;
class ioport_manager;
class ioport_port;
struct ioport_port_live;

// declared in machine.h
class running_machine;

// declared in mconfig.h
namespace emu { namespace detail { class machine_config_replace; } }
class machine_config;

// declared in natkeyboard.h
class natural_keyboard;

// declared in network.h
class network_manager;

// declared in output.h
class output_manager;

// declared in render.h
class layout_element;
class layout_view;
class render_container;
class render_manager;
class render_target;
class render_texture;

// declared in rendfont.h
class render_font;

// declared in romentry.h
class rom_entry;

// declared in romload.h
class rom_load_manager;

// declared in schedule.h
class device_scheduler;
class emu_timer;

// declared in screen.h
class screen_device;

// declared in softlist.h
class software_info;
class software_part;

// declared in softlist_dev.h
class software_list_device;
class software_list_loader;

// declared in sound.h
class sound_manager;
class sound_stream;

// declared in speaker.h
class speaker_device;

// declared in tilemap.h
class tilemap_device;
class tilemap_manager;
class tilemap_t;

// declared in ui/uimain.h
class ui_manager;

// declared in uiinput.h
class ui_input_manager;

// declared in validity.h
class validity_checker;

// declared in video.h
class video_manager;

#endif // MAME_EMU_EMUFWD_H