diff options
Diffstat (limited to 'src/devices/video/hd44780.h')
-rw-r--r-- | src/devices/video/hd44780.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/devices/video/hd44780.h b/src/devices/video/hd44780.h index bcf5a683a88..65544ef6828 100644 --- a/src/devices/video/hd44780.h +++ b/src/devices/video/hd44780.h @@ -44,6 +44,17 @@ public: // static configuration helpers void set_lcd_size(int lines, int chars) { m_lines = lines; m_chars = chars; } template <typename... T> void set_pixel_update_cb(T &&... args) { m_pixel_update_cb = pixel_update_delegate(std::forward<T>(args)...); } + void set_pixel_update_cb(pixel_update_delegate callback) { m_pixel_update_cb = callback; } + template <class FunctionClass> void set_pixel_update_cb(const char *devname, + void (FunctionClass::*callback)(bitmap_ind16 &, uint8_t, uint8_t, uint8_t, uint8_t, int), const char *name) + { + set_pixel_update_cb(pixel_update_delegate(callback, name, devname, static_cast<FunctionClass *>(nullptr))); + } + template <class FunctionClass> void set_pixel_update_cb( + void (FunctionClass::*callback)(bitmap_ind16 &, uint8_t, uint8_t, uint8_t, uint8_t, int), const char *name) + { + set_pixel_update_cb(pixel_update_delegate(callback, name, nullptr, static_cast<FunctionClass *>(nullptr))); + } // device interface virtual void write(offs_t offset, u8 data); |