BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
bsemidinotifier.hh
Go to the documentation of this file.
00001  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
00002 #ifndef __BSE_MIDI_NOTIFIER_H__
00003 #define __BSE_MIDI_NOTIFIER_H__
00004 
00005 #include <bse/bseitem.hh>
00006 #include <bse/bsemidireceiver.hh>
00007 
00008 
00009 G_BEGIN_DECLS
00010 
00011 /* --- object type macros --- */
00012 #define BSE_TYPE_MIDI_NOTIFIER              (BSE_TYPE_ID (BseMidiNotifier))
00013 #define BSE_MIDI_NOTIFIER(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_MIDI_NOTIFIER, BseMidiNotifier))
00014 #define BSE_MIDI_NOTIFIER_CLASS(class)      (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_MIDI_NOTIFIER, BseMidiNotifierClass))
00015 #define BSE_IS_MIDI_NOTIFIER(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_MIDI_NOTIFIER))
00016 #define BSE_IS_MIDI_NOTIFIER_CLASS(class)   (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_MIDI_NOTIFIER))
00017 #define BSE_MIDI_NOTIFIER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_MIDI_NOTIFIER, BseMidiNotifierClass))
00018 
00019 struct BseMidiNotifier : BseItem {
00020   BseMidiReceiver *midi_receiver;
00021 };
00022 struct BseMidiNotifierClass : BseItemClass {
00023   void  (*midi_event)   (BseMidiNotifier *self, BseMidiEvent *event);
00024 };
00025 
00026 void bse_midi_notifier_set_receiver     (BseMidiNotifier      *self,
00027                                          BseMidiReceiver      *midi_receiver);
00028 void bse_midi_notifier_dispatch         (BseMidiNotifier      *self);
00029 void bse_midi_notifiers_attach_source   (void);
00030 void bse_midi_notifiers_wakeup          (void);
00031 G_END_DECLS
00032 #endif /* __BSE_MIDI_NOTIFIER_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines