BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
bsesubsynth.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_SUB_SYNTH_H__
00003 #define __BSE_SUB_SYNTH_H__
00004 #include <bse/bsesource.hh>
00005 G_BEGIN_DECLS
00006 
00007 #define BSE_TYPE_SUB_SYNTH              (BSE_TYPE_ID (BseSubSynth))
00008 #define BSE_SUB_SYNTH(object)           (G_TYPE_CHECK_INSTANCE_CAST ((object), BSE_TYPE_SUB_SYNTH, BseSubSynth))
00009 #define BSE_SUB_SYNTH_CLASS(class)      (G_TYPE_CHECK_CLASS_CAST ((class), BSE_TYPE_SUB_SYNTH, BseSubSynthClass))
00010 #define BSE_IS_SUB_SYNTH(object)        (G_TYPE_CHECK_INSTANCE_TYPE ((object), BSE_TYPE_SUB_SYNTH))
00011 #define BSE_IS_SUB_SYNTH_CLASS(class)   (G_TYPE_CHECK_CLASS_TYPE ((class), BSE_TYPE_SUB_SYNTH))
00012 #define BSE_SUB_SYNTH_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), BSE_TYPE_SUB_SYNTH, BseSubSynthClass))
00013 
00014 struct BseSubSynth : BseSource {
00015   BseSNet         *snet;
00016   gchar          **input_ports;
00017   gchar          **output_ports;
00018   guint            midi_channel;
00019   guint            null_shortcut : 1;
00020 };
00021 struct BseSubSynthClass : BseSourceClass
00022 {};
00023 
00024 /* whether to shortcut inputs with outputs for snet==NULL */
00025 void    bse_sub_synth_set_null_shortcut  (BseSubSynth     *self,
00026                                           gboolean         enabled);
00027 /* override midi_channel for snet, or if midi_channel==0 inherit from parent */
00028 void    bse_sub_synth_set_midi_channel   (BseSubSynth     *self,
00029                                           guint            midi_channel);
00030 
00031 
00032 G_END_DECLS
00033 
00034 #endif /* __BSE_SUB_SYNTH_H__ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines