BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
bsemididevice.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_DEVICE_H__
00003 #define __BSE_MIDI_DEVICE_H__
00004 
00005 #include        <bse/bsedevice.hh>
00006 #include        <bse/bsemidievent.hh>
00007 
00008 G_BEGIN_DECLS
00009 
00010 /* --- object type macros --- */
00011 #define BSE_TYPE_MIDI_DEVICE              (BSE_TYPE_ID (BseMidiDevice))
00012 #define BSE_MIDI_DEVICE(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_MIDI_DEVICE, BseMidiDevice))
00013 #define BSE_MIDI_DEVICE_CLASS(class)      (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_MIDI_DEVICE, BseMidiDeviceClass))
00014 #define BSE_IS_MIDI_DEVICE(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_MIDI_DEVICE))
00015 #define BSE_IS_MIDI_DEVICE_CLASS(class)   (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_MIDI_DEVICE))
00016 #define BSE_MIDI_DEVICE_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_MIDI_DEVICE, BseMidiDeviceClass))
00017 
00018 struct BseMidiHandle    /* this should be nuked, it's useless */
00019 {
00020   guint                  readable : 1;
00021   guint                  writable : 1;
00022   guint                  running_thread : 1;
00023   BseMidiDecoder        *midi_decoder;
00024 };
00025 struct BseMidiDevice : BseDevice {
00026   BseMidiDecoder        *midi_decoder;
00027   /* operational handle */
00028   BseMidiHandle         *handle;
00029 };
00030 struct BseMidiDeviceClass : BseDeviceClass
00031 {};
00032 
00033 void            bse_midi_handle_init            (BseMidiHandle          *handle);
00034 G_END_DECLS
00035 #endif /* __BSE_MIDI_DEVICE_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines