summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/generic/slot.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/generic/slot.h')
-rw-r--r--src/devices/bus/generic/slot.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/devices/bus/generic/slot.h b/src/devices/bus/generic/slot.h
index fada3158273..154be4db5ae 100644
--- a/src/devices/bus/generic/slot.h
+++ b/src/devices/bus/generic/slot.h
@@ -86,10 +86,10 @@ enum
static_cast<generic_slot_device *>(device)->set_extensions(_ext);
#define MCFG_GENERIC_LOAD(_class, _method) \
- generic_slot_device::static_set_device_load(*device, device_image_load_delegate(&DEVICE_IMAGE_LOAD_NAME(_class,_method), this));
+ downcast<generic_slot_device &>(*device).set_device_load(device_image_load_delegate(&DEVICE_IMAGE_LOAD_NAME(_class,_method), this));
#define MCFG_GENERIC_UNLOAD(_class, _method) \
- generic_slot_device::static_set_device_unload(*device, device_image_func_delegate(&DEVICE_IMAGE_UNLOAD_NAME(_class,_method), this));
+ downcast<generic_slot_device &>(*device).set_device_unload(device_image_func_delegate(&DEVICE_IMAGE_UNLOAD_NAME(_class,_method), this));
@@ -104,8 +104,8 @@ public:
generic_slot_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock);
virtual ~generic_slot_device();
- static void static_set_device_load(device_t &device, device_image_load_delegate callback) { downcast<generic_slot_device &>(device).m_device_image_load = callback; }
- static void static_set_device_unload(device_t &device, device_image_func_delegate callback) { downcast<generic_slot_device &>(device).m_device_image_unload = callback; }
+ template <typename Object> void set_device_load(Object &&cb) { m_device_image_load = std::forward<Object>(cb); }
+ template <typename Object> void set_device_unload(Object &&cb) { m_device_image_unload = std::forward<Object>(cb); }
void set_interface(const char * interface) { m_interface = interface; }
void set_default_card(const char * def) { m_default_card = def; }