trunk/src/emu/machine/netlist.h
| r18844 | r18845 | |
| 1125 | 1125 | template<bool _Required, class _NETClass> |
| 1126 | 1126 | class output_finder; |
| 1127 | 1127 | class optional_output; |
| 1128 | | template<class _C> |
| 1128 | template<class C> |
| 1129 | 1129 | class required_output; |
| 1130 | 1130 | class optional_param; |
| 1131 | 1131 | class required_param; |
| r18844 | r18845 | |
| 1224 | 1224 | }; |
| 1225 | 1225 | |
| 1226 | 1226 | // required devices are similar but throw an error if they are not found |
| 1227 | | template<class _C> |
| 1228 | | class netlist_mame_device::required_output : public netlist_mame_device::output_finder<true, _C> |
| 1227 | template<class C> |
| 1228 | class netlist_mame_device::required_output : public netlist_mame_device::output_finder<true, C> |
| 1229 | 1229 | { |
| 1230 | 1230 | public: |
| 1231 | | required_output(device_t &base, const char *tag, const char *output) : output_finder<true, _C>(base, tag, output) { } |
| 1231 | required_output(device_t &base, const char *tag, const char *output) : output_finder<true, C>(base, tag, output) { } |
| 1232 | 1232 | |
| 1233 | 1233 | virtual bool OnDeviceStart() |
| 1234 | 1234 | { |
| 1235 | | this->m_target = (_C *) &(this->m_netlist->setup().find_output(this->m_output)); |
| 1235 | this->m_target = (C *) &(this->m_netlist->setup().find_output(this->m_output)); |
| 1236 | 1236 | return this->report_missing(this->m_target != NULL, "output", true); |
| 1237 | 1237 | } |
| 1238 | 1238 | |