BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
bsemidicontroller.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_CONTROLLER_H__
00003 #define __BSE_MIDI_CONTROLLER_H__
00004 
00005 #include <bse/bsesource.hh>
00006 #include <bse/bsemidievent.hh>
00007 
00008 G_BEGIN_DECLS
00009 
00010 
00011 /* --- object type macros --- */
00012 #define BSE_TYPE_MIDI_CONTROLLER              (BSE_TYPE_ID (BseMidiController))
00013 #define BSE_MIDI_CONTROLLER(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_MIDI_CONTROLLER, BseMidiController))
00014 #define BSE_MIDI_CONTROLLER_CLASS(class)      (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_MIDI_CONTROLLER, BseMidiControllerClass))
00015 #define BSE_IS_CONTROLLER(object)             (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_MIDI_CONTROLLER))
00016 #define BSE_IS_CONTROLLER_CLASS(class)        (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_MIDI_CONTROLLER))
00017 #define BSE_MIDI_CONTROLLER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_MIDI_CONTROLLER, BseMidiControllerClassOut))
00018 
00019 struct BseMidiController : BseSource {
00020   guint              midi_channel;
00021   BseMidiSignalType  controls[4];
00022 };
00023 struct BseMidiControllerClass : BseSourceClass
00024 {};
00025 
00026 enum
00027 {
00028   BSE_MIDI_CONTROLLER_OCHANNEL_CONTROL1,
00029   BSE_MIDI_CONTROLLER_OCHANNEL_CONTROL2,
00030   BSE_MIDI_CONTROLLER_OCHANNEL_CONTROL3,
00031   BSE_MIDI_CONTROLLER_OCHANNEL_CONTROL4,
00032   BSE_MIDI_CONTROLLER_N_OCHANNELS
00033 };
00034 
00035 
00036 G_END_DECLS
00037 
00038 #endif /* __BSE_MIDI_CONTROLLER_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines