summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/midi/midi.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/midi/midi.h')
-rw-r--r--src/devices/bus/midi/midi.h16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/devices/bus/midi/midi.h b/src/devices/bus/midi/midi.h
index 2ce2afd1bd7..a14a7b8e627 100644
--- a/src/devices/bus/midi/midi.h
+++ b/src/devices/bus/midi/midi.h
@@ -1,7 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:R. Belmont
-#ifndef __BUS_MIDI_H__
-#define __BUS_MIDI_H__
+#ifndef MAME_BUS_MIDI_MIDI_H
+#define MAME_BUS_MIDI_MIDI_H
+
+#pragma once
#define MCFG_MIDI_PORT_ADD(_tag, _slot_intf, _def_slot) \
@@ -23,7 +25,7 @@ public:
virtual ~midi_port_device();
// static configuration helpers
- template<class _Object> static devcb_base &set_rx_handler(device_t &device, _Object object) { return downcast<midi_port_device &>(device).m_rxd_handler.set_callback(object); }
+ template <class Object> static devcb_base &set_rx_handler(device_t &device, Object &&cb) { return downcast<midi_port_device &>(device).m_rxd_handler.set_callback(std::forward<Object>(cb)); }
DECLARE_WRITE_LINE_MEMBER( write_txd );
@@ -46,19 +48,21 @@ class device_midi_port_interface : public device_slot_card_interface
friend class midi_port_device;
public:
- device_midi_port_interface(const machine_config &mconfig, device_t &device);
virtual ~device_midi_port_interface();
- virtual DECLARE_WRITE_LINE_MEMBER( input_txd ) {}
+ virtual DECLARE_WRITE_LINE_MEMBER( input_txd ) { }
DECLARE_WRITE_LINE_MEMBER( output_rxd ) { m_port->m_rxd = state; m_port->m_rxd_handler(state); }
protected:
+ device_midi_port_interface(const machine_config &mconfig, device_t &device);
+
midi_port_device *m_port;
};
extern const device_type MIDI_PORT;
+DECLARE_DEVICE_TYPE(MIDI_PORT, midi_port_device)
SLOT_INTERFACE_EXTERN(midiin_slot);
SLOT_INTERFACE_EXTERN(midiout_slot);
-#endif
+#endif // MAME_BUS_MIDI_MIDI_H