BEAST - Free Software Audio Synthesizer and Tracker  0.10.0
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
Bse Namespace Reference

The Bse namespace contains all functions of the synthesis engine. More...

Namespaces

 Contrib
 The Contrib namespace contains contributed BSE modules.
 
 Procedure
 The Procedure namespace contains procedure/IDL helpers.
 
 Standard
 The Standard namespace contains BSE standard modules.
 

Classes

class  AidaGlibSource
 A GSource implementation to attach an Aida::BaseConnection to a Glib main loop. More...
 
class  AmplifierBase
 
struct  Arg
 
struct  AuxData
 AuxData - record to describe entity attributes with "key=value" strings. More...
 
struct  AuxDataSeq
 AuxDataSeq - a variable length list of AuxData records. More...
 
class  BalanceBase
 
interface  BiquadFilter
 
interface  Bus
 Interface for effect stacks and per-track audio signal routing to the master output. More...
 
class  BusHandle
 See also the corresponding IDL class Bus. More...
 
class  BusIface
 See also the corresponding IDL class Bus. More...
 
class  BusImpl
 
class  BusModuleBase
 
struct  Category
 
struct  CategorySeq
 
struct  ClassInfo
 
struct  ClnT_AuxData
 
struct  ClnT_AuxDataSeq
 
struct  ClnT_Icon
 
struct  ClnT_NoteDescription
 
struct  ClnT_PartControl
 
struct  ClnT_PartControlSeq
 
struct  ClnT_PartLink
 
struct  ClnT_PartLinkSeq
 
struct  ClnT_PartNote
 
struct  ClnT_PartNoteSeq
 
struct  ClnT_PartSeq
 
struct  ClnT_PixelSeq
 
struct  ClnT_SampleFileInfo
 
struct  ClnT_SongTiming
 
struct  ClnT_StringSeq
 
struct  ClnT_TrackPart
 
struct  ClnT_TrackPartSeq
 
struct  ClnT_UserMessage
 
interface  Constant
 
interface  Container
 Base interface type for containers of Item derived types. More...
 
class  ContainerHandle
 See also the corresponding IDL class Container. More...
 
class  ContainerIface
 See also the corresponding IDL class Container. More...
 
class  ContainerImpl
 
interface  ContextMerger
 Source module for merging multiple synthesis contexts, used to implement polyphony. More...
 
class  ContextMergerHandle
 See also the corresponding IDL class ContextMerger. More...
 
class  ContextMergerIface
 See also the corresponding IDL class ContextMerger. More...
 
class  ContextMergerImpl
 
interface  CSynth
 Customizable synthesis (filter) network container. More...
 
class  CSynthHandle
 See also the corresponding IDL class CSynth. More...
 
class  CSynthIface
 See also the corresponding IDL class CSynth. More...
 
class  CSynthImpl
 
interface  CxxBase
 
class  CxxBaseClass
 
class  CxxClosure
 
struct  DontReach
 
interface  EditableSample
 Interface for editable PCM wave samples. More...
 
class  EditableSampleHandle
 See also the corresponding IDL class EditableSample. More...
 
class  EditableSampleIface
 See also the corresponding IDL class EditableSample. More...
 
class  EditableSampleImpl
 
interface  Effect
 
class  EffectBase
 
struct  EnforceDerivedFrom
 
struct  EnforceDerivedFrom< Derived *, Base * >
 
struct  Exception
 
class  ExportTypeKeeper
 
class  Flac1Handle
 Flac1Handle supports storing flac files as binary appendix to BSE files. More...
 
struct  FloatSeq
 
class  FromRecVisitor
 
struct  GConfig
 
struct  Ic0n
 
struct  Icon
 Representation of an icon pixel image. More...
 
interface  InstrumentInput
 
interface  InstrumentOutput
 
struct  InvalidArgument2
 
struct  InvalidConnection
 
struct  IStream
 
struct  It3mSeq
 
interface  Item
 Base interface type for objects that can be added to a container. More...
 
class  ItemHandle
 See also the corresponding IDL class Item. More...
 
class  ItemIface
 See also the corresponding IDL class Item. More...
 
class  ItemImpl
 
interface  Janitor
 
struct  JStream
 
interface  LadspaModule
 
class  MasterThread
 
struct  MidiChannelEvent
 
interface  MidiController
 
interface  MidiInput
 
interface  MidiNotifier
 Interface for MIDI event notification. More...
 
class  MidiNotifierHandle
 See also the corresponding IDL class MidiNotifier. More...
 
class  MidiNotifierIface
 See also the corresponding IDL class MidiNotifier. More...
 
class  MidiNotifierImpl
 
interface  MidiSynth
 Interface for MIDI synthesis networks. More...
 
class  MidiSynthHandle
 See also the corresponding IDL class MidiSynth. More...
 
class  MidiSynthIface
 See also the corresponding IDL class MidiSynth. More...
 
class  MidiSynthImpl
 
interface  MidiVoiceInput
 
interface  MidiVoiceSwitch
 
class  NoiseBase
 
struct  NoteDescription
 A note description provides all needed details about a specific note. ". More...
 
struct  NoteSeq
 
struct  NoteSequence
 
interface  Object
 Fundamental base type for all BSE objects. More...
 
class  ObjectHandle
 See also the corresponding IDL class Object. More...
 
class  ObjectIface
 See also the corresponding IDL class Object. More...
 
class  ObjectImpl
 
struct  OStream
 
struct  P1xelSeq
 
interface  Part
 Data interface for containment of piano notes and MIDI effects. More...
 
struct  PartControl
 Part specific control event representation. More...
 
struct  PartControlSeq
 A list of part control events. More...
 
class  PartHandle
 See also the corresponding IDL class Part. More...
 
class  PartIface
 See also the corresponding IDL class Part. More...
 
class  PartImpl
 
struct  PartLink
 Record representing the use of a Part within a Track at a specific position. More...
 
struct  PartLinkSeq
 Sequence of PartLink records. More...
 
struct  PartNote
 Part specific note event representation. More...
 
struct  PartNoteSeq
 A list of part note events. More...
 
struct  PartSeq
 A list of Part or derived types. More...
 
interface  PcmInput
 
interface  PcmOutput
 
interface  PcmWriter
 Interface for writing PCM wave data. More...
 
class  PcmWriterHandle
 See also the corresponding IDL class PcmWriter. More...
 
class  PcmWriterIface
 See also the corresponding IDL class PcmWriter. More...
 
class  PcmWriterImpl
 
struct  PixelSeq
 Representation of an image pixel sequence in ARGB format. More...
 
struct  Probe
 
struct  ProbeFeatures
 
struct  ProbeRequest
 
struct  ProbeRequestSeq
 
struct  ProbeSeq
 
interface  Project
 Projects support loading, saving, playback and act as containers for all other sound objects. More...
 
class  ProjectHandle
 See also the corresponding IDL class Project. More...
 
class  ProjectIface
 See also the corresponding IDL class Project. More...
 
class  ProjectImpl
 
struct  PropertyCandidates
 
class  PspecVisitor
 
class  Record
 
struct  SampleFileInfo
 Structure containing meta data for multi wave samples. More...
 
class  Sequencer
 Note and MIDI sequencer. More...
 
interface  Server
 Main Bse remote origin object. More...
 
class  ServerHandle
 See also the corresponding IDL class Server. More...
 
class  ServerIface
 See also the corresponding IDL class Server. More...
 
class  ServerImpl
 
interface  SNet
 Base interface type for all kinds of synthesis networks. More...
 
class  SNetHandle
 See also the corresponding IDL class SNet. More...
 
class  SNetIface
 See also the corresponding IDL class SNet. More...
 
class  SNetImpl
 
interface  Snooper
 
interface  Song
 Interface for Track and Part objects, as well as meta data for sequencing. More...
 
class  SongHandle
 See also the corresponding IDL class Song. More...
 
class  SongIface
 See also the corresponding IDL class Song. More...
 
class  SongImpl
 
struct  SongTiming
 Song timing configuration. More...
 
interface  Source
 Base interface type for synthesis modules with input or output streams. More...
 
class  SourceHandle
 See also the corresponding IDL class Source. More...
 
class  SourceIface
 See also the corresponding IDL class Source. More...
 
class  SourceImpl
 
struct  SrvT_AuxData
 
struct  SrvT_AuxDataSeq
 
struct  SrvT_Icon
 
struct  SrvT_NoteDescription
 
struct  SrvT_PartControl
 
struct  SrvT_PartControlSeq
 
struct  SrvT_PartLink
 
struct  SrvT_PartLinkSeq
 
struct  SrvT_PartNote
 
struct  SrvT_PartNoteSeq
 
struct  SrvT_PartSeq
 
struct  SrvT_PixelSeq
 
struct  SrvT_SampleFileInfo
 
struct  SrvT_SongTiming
 
struct  SrvT_StringSeq
 
struct  SrvT_TrackPart
 
struct  SrvT_TrackPartSeq
 
struct  SrvT_UserMessage
 
interface  StandardOsc
 
struct  StringSeq
 Stringeq - a variable length list of test strings. More...
 
interface  SubIPort
 
interface  SubOPort
 
interface  SubSynth
 Synthesizer module for embedding (rerouting input and output) of another synthesizer network (SNet). More...
 
class  SubSynthHandle
 See also the corresponding IDL class SubSynth. More...
 
class  SubSynthIface
 See also the corresponding IDL class SubSynth. More...
 
class  SubSynthImpl
 
class  SummationBase
 
interface  Super
 Base interface type for Item managers. More...
 
class  SuperHandle
 See also the corresponding IDL class Super. More...
 
class  SuperIface
 See also the corresponding IDL class Super. More...
 
class  SuperImpl
 
class  SynthesisModule
 
class  TaskRegistry
 The task registry keeps track of runtime threads for profiling and statistical purposes. More...
 
interface  TestObject
 Object to carry out IDL, API, signal, etc tests. More...
 
class  TestObjectHandle
 See also the corresponding IDL class TestObject. More...
 
class  TestObjectIface
 See also the corresponding IDL class TestObject. More...
 
class  TestObjectImpl
 
class  TickStamp
 
class  ToRecVisitor
 
interface  Track
 Interface for sequencing information and links to Part objects. More...
 
class  TrackHandle
 See also the corresponding IDL class Track. More...
 
class  TrackIface
 See also the corresponding IDL class Track. More...
 
class  TrackImpl
 
struct  TrackPart
 Structure linking to a Track from within a Part. More...
 
struct  TrackPartSeq
 Sequence of TrackPart records. More...
 
class  TypeRegistry
 
struct  TypeSeq
 
struct  UserMessage
 Structure for submission of user interface messages from BSE. More...
 
struct  Value
 
interface  Wave
 Interface for PCM wave samples. More...
 
class  WaveHandle
 See also the corresponding IDL class Wave. More...
 
class  WaveIface
 See also the corresponding IDL class Wave. More...
 
class  WaveImpl
 
interface  WaveOsc
 
interface  WaveRepo
 Interface serving as container for Wave objects. More...
 
class  WaveRepoHandle
 See also the corresponding IDL class WaveRepo. More...
 
class  WaveRepoIface
 See also the corresponding IDL class WaveRepo. More...
 
class  WaveRepoImpl
 
struct  WrongTypeGValue
 

Typedefs

typedef Sfi::RecordHandle< MidiChannelEventMidiChannelEventHandle
 
typedef Sfi::RecordHandle< PropertyCandidatesPropertyCandidatesHandle
 
typedef Sfi::RecordHandle< NoteSequenceNoteSequenceHandle
 
typedef Sfi::RecordHandle< Ic0nIc0nHandle
 
typedef Sfi::RecordHandle< CategoryCategoryHandle
 
typedef Sfi::RecordHandle< GConfigGConfigHandle
 
typedef TestObjectHandle TestObjectH
 Convenience alias for the IDL type TestObject.
 
typedef ObjectHandle ObjectH
 Convenience alias for the IDL type Object.
 
typedef ItemHandle ItemH
 Convenience alias for the IDL type Item.
 
typedef PartHandle PartH
 Convenience alias for the IDL type Part.
 
typedef SourceHandle SourceH
 Convenience alias for the IDL type Source.
 
typedef ContextMergerHandle ContextMergerH
 Convenience alias for the IDL type ContextMerger.
 
typedef ContainerHandle ContainerH
 Convenience alias for the IDL type Container.
 
typedef SuperHandle SuperH
 Convenience alias for the IDL type Super.
 
typedef SNetHandle SNetH
 Convenience alias for the IDL type SNet.
 
typedef CSynthHandle CSynthH
 Convenience alias for the IDL type CSynth.
 
typedef SubSynthHandle SubSynthH
 Convenience alias for the IDL type SubSynth.
 
typedef TrackHandle TrackH
 Convenience alias for the IDL type Track.
 
typedef BusHandle BusH
 Convenience alias for the IDL type Bus.
 
typedef SongHandle SongH
 Convenience alias for the IDL type Song.
 
typedef EditableSampleHandle EditableSampleH
 Convenience alias for the IDL type EditableSample.
 
typedef WaveHandle WaveH
 Convenience alias for the IDL type Wave.
 
typedef WaveRepoHandle WaveRepoH
 Convenience alias for the IDL type WaveRepo.
 
typedef MidiNotifierHandle MidiNotifierH
 Convenience alias for the IDL type MidiNotifier.
 
typedef MidiSynthHandle MidiSynthH
 Convenience alias for the IDL type MidiSynth.
 
typedef ProjectHandle ProjectH
 Convenience alias for the IDL type Project.
 
typedef PcmWriterHandle PcmWriterH
 Convenience alias for the IDL type PcmWriter.
 
typedef ServerHandle ServerH
 Convenience alias for the IDL type Server.
 
typedef ClnT_StringSeq StringSeq
 
typedef ClnT_PixelSeq PixelSeq
 
typedef ClnT_Icon Icon
 
typedef ClnT_AuxData AuxData
 
typedef ClnT_AuxDataSeq AuxDataSeq
 
typedef ClnT_UserMessage UserMessage
 
typedef ClnT_SongTiming SongTiming
 
typedef ClnT_NoteDescription NoteDescription
 
typedef ClnT_PartNote PartNote
 
typedef ClnT_PartNoteSeq PartNoteSeq
 
typedef ClnT_PartControl PartControl
 
typedef ClnT_PartControlSeq PartControlSeq
 
typedef ClnT_PartSeq PartSeq
 
typedef ClnT_PartLink PartLink
 
typedef ClnT_PartLinkSeq PartLinkSeq
 
typedef ClnT_TrackPart TrackPart
 
typedef ClnT_TrackPartSeq TrackPartSeq
 
typedef ClnT_SampleFileInfo SampleFileInfo
 
typedef std::string String
 
typedef std::complex< double > Complex
 
typedef std::shared_ptr< ObjectImplObjectImplP
 
typedef Sfi::RecordHandle< ProbeFeaturesProbeFeaturesHandle
 
typedef Sfi::RecordHandle< ProbeProbeHandle
 
typedef Sfi::RecordHandle< ProbeRequestProbeRequestHandle
 
typedef std::shared_ptr< TestObjectIfaceTestObjectIfaceP
 
typedef std::weak_ptr< TestObjectIfaceTestObjectIfaceW
 
typedef std::shared_ptr< ObjectIfaceObjectIfaceP
 
typedef std::weak_ptr< ObjectIfaceObjectIfaceW
 
typedef std::shared_ptr< ItemIfaceItemIfaceP
 
typedef std::weak_ptr< ItemIfaceItemIfaceW
 
typedef std::shared_ptr< PartIfacePartIfaceP
 
typedef std::weak_ptr< PartIfacePartIfaceW
 
typedef std::shared_ptr< SourceIfaceSourceIfaceP
 
typedef std::weak_ptr< SourceIfaceSourceIfaceW
 
typedef std::shared_ptr< ContextMergerIfaceContextMergerIfaceP
 
typedef std::weak_ptr< ContextMergerIfaceContextMergerIfaceW
 
typedef std::shared_ptr< ContainerIfaceContainerIfaceP
 
typedef std::weak_ptr< ContainerIfaceContainerIfaceW
 
typedef std::shared_ptr< SuperIfaceSuperIfaceP
 
typedef std::weak_ptr< SuperIfaceSuperIfaceW
 
typedef std::shared_ptr< SNetIfaceSNetIfaceP
 
typedef std::weak_ptr< SNetIfaceSNetIfaceW
 
typedef std::shared_ptr< CSynthIfaceCSynthIfaceP
 
typedef std::weak_ptr< CSynthIfaceCSynthIfaceW
 
typedef std::shared_ptr< SubSynthIfaceSubSynthIfaceP
 
typedef std::weak_ptr< SubSynthIfaceSubSynthIfaceW
 
typedef std::shared_ptr< TrackIfaceTrackIfaceP
 
typedef std::weak_ptr< TrackIfaceTrackIfaceW
 
typedef std::shared_ptr< BusIfaceBusIfaceP
 
typedef std::weak_ptr< BusIfaceBusIfaceW
 
typedef std::shared_ptr< SongIfaceSongIfaceP
 
typedef std::weak_ptr< SongIfaceSongIfaceW
 
typedef std::shared_ptr< EditableSampleIfaceEditableSampleIfaceP
 
typedef std::weak_ptr< EditableSampleIfaceEditableSampleIfaceW
 
typedef std::shared_ptr< WaveIfaceWaveIfaceP
 
typedef std::weak_ptr< WaveIfaceWaveIfaceW
 
typedef std::shared_ptr< WaveRepoIfaceWaveRepoIfaceP
 
typedef std::weak_ptr< WaveRepoIfaceWaveRepoIfaceW
 
typedef std::shared_ptr< MidiNotifierIfaceMidiNotifierIfaceP
 
typedef std::weak_ptr< MidiNotifierIfaceMidiNotifierIfaceW
 
typedef std::shared_ptr< MidiSynthIfaceMidiSynthIfaceP
 
typedef std::weak_ptr< MidiSynthIfaceMidiSynthIfaceW
 
typedef std::shared_ptr< ProjectIfaceProjectIfaceP
 
typedef std::weak_ptr< ProjectIfaceProjectIfaceW
 
typedef std::shared_ptr< PcmWriterIfacePcmWriterIfaceP
 
typedef std::weak_ptr< PcmWriterIfacePcmWriterIfaceW
 
typedef std::shared_ptr< ServerIfaceServerIfaceP
 
typedef std::weak_ptr< ServerIfaceServerIfaceW
 
typedef TickStamp::WakeupP TickStampWakeupP
 
typedef std::shared_ptr< TestObjectImplTestObjectImplP
 
typedef std::unordered_map< std::type_index, SfiRecFieldsVisitableTypeRecFieldMap
 
typedef std::unordered_map< std::type_index, GParamSpec * > VisitableTypeSeqFieldMap
 
typedef std::unordered_map< std::type_index, std::vector< GParamSpec * > > VisitableTypeAcsFieldMap
 

Enumerations

enum  Error {
  NONE, INTERNAL, UNKNOWN, IO,
  PERMS, FILE_BUSY, FILE_EXISTS, FILE_EOF,
  FILE_EMPTY, FILE_NOT_FOUND, FILE_IS_DIR, FILE_OPEN_FAILED,
  FILE_SEEK_FAILED, FILE_READ_FAILED, FILE_WRITE_FAILED, MANY_FILES,
  NO_FILES, NO_SPACE, NO_MEMORY, NO_HEADER,
  NO_SEEK_INFO, NO_DATA, DATA_CORRUPT, WRONG_N_CHANNELS,
  FORMAT_INVALID, FORMAT_UNKNOWN, DATA_UNMATCHED, TEMP,
  WAVE_NOT_FOUND, CODEC_FAILURE, UNIMPLEMENTED, INVALID_PROPERTY,
  INVALID_MIDI_CONTROL, PARSE_ERROR, SPAWN, DEVICE_NOT_AVAILABLE,
  DEVICE_ASYNC, DEVICE_BUSY, DEVICE_FORMAT, DEVICE_BUFFER,
  DEVICE_LATENCY, DEVICE_CHANNELS, DEVICE_FREQUENCY, DEVICES_MISMATCH,
  SOURCE_NO_SUCH_MODULE, SOURCE_NO_SUCH_ICHANNEL, SOURCE_NO_SUCH_OCHANNEL, SOURCE_NO_SUCH_CONNECTION,
  SOURCE_PRIVATE_ICHANNEL, SOURCE_ICHANNEL_IN_USE, SOURCE_CHANNELS_CONNECTED, SOURCE_CONNECTION_INVALID,
  SOURCE_PARENT_MISMATCH, SOURCE_BAD_LOOPBACK, SOURCE_BUSY, SOURCE_TYPE_INVALID,
  PROC_NOT_FOUND, PROC_BUSY, PROC_PARAM_INVAL, PROC_EXECUTION,
  PROC_ABORT, NO_ENTRY, NO_EVENT, NO_TARGET,
  NOT_OWNER, INVALID_OFFSET, INVALID_DURATION, INVALID_OVERLAP
}
 
enum  MidiSignal {
  PROGRAM, PRESSURE, PITCH_BEND, VELOCITY,
  FINE_TUNE, CONTINUOUS_0, CONTINUOUS_1, CONTINUOUS_2,
  CONTINUOUS_3, CONTINUOUS_4, CONTINUOUS_5, CONTINUOUS_6,
  CONTINUOUS_7, CONTINUOUS_8, CONTINUOUS_9, CONTINUOUS_10,
  CONTINUOUS_11, CONTINUOUS_12, CONTINUOUS_13, CONTINUOUS_14,
  CONTINUOUS_15, CONTINUOUS_16, CONTINUOUS_17, CONTINUOUS_18,
  CONTINUOUS_19, CONTINUOUS_20, CONTINUOUS_21, CONTINUOUS_22,
  CONTINUOUS_23, CONTINUOUS_24, CONTINUOUS_25, CONTINUOUS_26,
  CONTINUOUS_27, CONTINUOUS_28, CONTINUOUS_29, CONTINUOUS_30,
  CONTINUOUS_31, CONSTANT_HIGH, CONSTANT_CENTER, CONSTANT_LOW,
  CONSTANT_NEGATIVE_CENTER, CONSTANT_NEGATIVE_HIGH, PARAMETER, NON_PARAMETER,
  CONTROL_0, CONTROL_1, CONTROL_2, CONTROL_3,
  CONTROL_4, CONTROL_5, CONTROL_6, CONTROL_7,
  CONTROL_8, CONTROL_9, CONTROL_10, CONTROL_11,
  CONTROL_12, CONTROL_13, CONTROL_14, CONTROL_15,
  CONTROL_16, CONTROL_17, CONTROL_18, CONTROL_19,
  CONTROL_20, CONTROL_21, CONTROL_22, CONTROL_23,
  CONTROL_24, CONTROL_25, CONTROL_26, CONTROL_27,
  CONTROL_28, CONTROL_29, CONTROL_30, CONTROL_31,
  CONTROL_32, CONTROL_33, CONTROL_34, CONTROL_35,
  CONTROL_36, CONTROL_37, CONTROL_38, CONTROL_39,
  CONTROL_40, CONTROL_41, CONTROL_42, CONTROL_43,
  CONTROL_44, CONTROL_45, CONTROL_46, CONTROL_47,
  CONTROL_48, CONTROL_49, CONTROL_50, CONTROL_51,
  CONTROL_52, CONTROL_53, CONTROL_54, CONTROL_55,
  CONTROL_56, CONTROL_57, CONTROL_58, CONTROL_59,
  CONTROL_60, CONTROL_61, CONTROL_62, CONTROL_63,
  CONTROL_64, CONTROL_65, CONTROL_66, CONTROL_67,
  CONTROL_68, CONTROL_69, CONTROL_70, CONTROL_71,
  CONTROL_72, CONTROL_73, CONTROL_74, CONTROL_75,
  CONTROL_76, CONTROL_77, CONTROL_78, CONTROL_79,
  CONTROL_80, CONTROL_81, CONTROL_82, CONTROL_83,
  CONTROL_84, CONTROL_85, CONTROL_86, CONTROL_87,
  CONTROL_88, CONTROL_89, CONTROL_90, CONTROL_91,
  CONTROL_92, CONTROL_93, CONTROL_94, CONTROL_95,
  CONTROL_96, CONTROL_97, CONTROL_98, CONTROL_99,
  CONTROL_100, CONTROL_101, CONTROL_102, CONTROL_103,
  CONTROL_104, CONTROL_105, CONTROL_106, CONTROL_107,
  CONTROL_108, CONTROL_109, CONTROL_110, CONTROL_111,
  CONTROL_112, CONTROL_113, CONTROL_114, CONTROL_115,
  CONTROL_116, CONTROL_117, CONTROL_118, CONTROL_119,
  CONTROL_120, CONTROL_121, CONTROL_122, CONTROL_123,
  CONTROL_124, CONTROL_125, CONTROL_126, CONTROL_127
}
 
enum  MusicalTuning {
  OD_12_TET, OD_7_TET, OD_5_TET, DIATONIC_SCALE,
  INDIAN_SCALE, PYTHAGOREAN_TUNING, PENTATONIC_5_LIMIT, PENTATONIC_BLUES,
  PENTATONIC_GOGO, QUARTER_COMMA_MEANTONE, SILBERMANN_SORGE, WERCKMEISTER_3,
  WERCKMEISTER_4, WERCKMEISTER_5, WERCKMEISTER_6, KIRNBERGER_3,
  YOUNG
}
 
enum  UserMessageType { ERROR, WARNING, INFO, DEBUG }
 
enum  MidiControlType {
  MIDI_CONTROL_NONE, MIDI_CONTROL_CONTINUOUS_0, MIDI_CONTROL_CONTINUOUS_1, MIDI_CONTROL_CONTINUOUS_2,
  MIDI_CONTROL_CONTINUOUS_3, MIDI_CONTROL_CONTINUOUS_4, MIDI_CONTROL_CONTINUOUS_5, MIDI_CONTROL_CONTINUOUS_6,
  MIDI_CONTROL_CONTINUOUS_7, MIDI_CONTROL_CONTINUOUS_8, MIDI_CONTROL_CONTINUOUS_9, MIDI_CONTROL_CONTINUOUS_10,
  MIDI_CONTROL_CONTINUOUS_11, MIDI_CONTROL_CONTINUOUS_12, MIDI_CONTROL_CONTINUOUS_13, MIDI_CONTROL_CONTINUOUS_14,
  MIDI_CONTROL_CONTINUOUS_15, MIDI_CONTROL_CONTINUOUS_16, MIDI_CONTROL_CONTINUOUS_17, MIDI_CONTROL_CONTINUOUS_18,
  MIDI_CONTROL_CONTINUOUS_19, MIDI_CONTROL_CONTINUOUS_20, MIDI_CONTROL_CONTINUOUS_21, MIDI_CONTROL_CONTINUOUS_22,
  MIDI_CONTROL_CONTINUOUS_23, MIDI_CONTROL_CONTINUOUS_24, MIDI_CONTROL_CONTINUOUS_25, MIDI_CONTROL_CONTINUOUS_26,
  MIDI_CONTROL_CONTINUOUS_27, MIDI_CONTROL_CONTINUOUS_28, MIDI_CONTROL_CONTINUOUS_29, MIDI_CONTROL_CONTINUOUS_30,
  MIDI_CONTROL_CONTINUOUS_31, MIDI_CONTROL_0, MIDI_CONTROL_1, MIDI_CONTROL_2,
  MIDI_CONTROL_3, MIDI_CONTROL_4, MIDI_CONTROL_5, MIDI_CONTROL_6,
  MIDI_CONTROL_7, MIDI_CONTROL_8, MIDI_CONTROL_9, MIDI_CONTROL_10,
  MIDI_CONTROL_11, MIDI_CONTROL_12, MIDI_CONTROL_13, MIDI_CONTROL_14,
  MIDI_CONTROL_15, MIDI_CONTROL_16, MIDI_CONTROL_17, MIDI_CONTROL_18,
  MIDI_CONTROL_19, MIDI_CONTROL_20, MIDI_CONTROL_21, MIDI_CONTROL_22,
  MIDI_CONTROL_23, MIDI_CONTROL_24, MIDI_CONTROL_25, MIDI_CONTROL_26,
  MIDI_CONTROL_27, MIDI_CONTROL_28, MIDI_CONTROL_29, MIDI_CONTROL_30,
  MIDI_CONTROL_31, MIDI_CONTROL_32, MIDI_CONTROL_33, MIDI_CONTROL_34,
  MIDI_CONTROL_35, MIDI_CONTROL_36, MIDI_CONTROL_37, MIDI_CONTROL_38,
  MIDI_CONTROL_39, MIDI_CONTROL_40, MIDI_CONTROL_41, MIDI_CONTROL_42,
  MIDI_CONTROL_43, MIDI_CONTROL_44, MIDI_CONTROL_45, MIDI_CONTROL_46,
  MIDI_CONTROL_47, MIDI_CONTROL_48, MIDI_CONTROL_49, MIDI_CONTROL_50,
  MIDI_CONTROL_51, MIDI_CONTROL_52, MIDI_CONTROL_53, MIDI_CONTROL_54,
  MIDI_CONTROL_55, MIDI_CONTROL_56, MIDI_CONTROL_57, MIDI_CONTROL_58,
  MIDI_CONTROL_59, MIDI_CONTROL_60, MIDI_CONTROL_61, MIDI_CONTROL_62,
  MIDI_CONTROL_63, MIDI_CONTROL_64, MIDI_CONTROL_65, MIDI_CONTROL_66,
  MIDI_CONTROL_67, MIDI_CONTROL_68, MIDI_CONTROL_69, MIDI_CONTROL_70,
  MIDI_CONTROL_71, MIDI_CONTROL_72, MIDI_CONTROL_73, MIDI_CONTROL_74,
  MIDI_CONTROL_75, MIDI_CONTROL_76, MIDI_CONTROL_77, MIDI_CONTROL_78,
  MIDI_CONTROL_79, MIDI_CONTROL_80, MIDI_CONTROL_81, MIDI_CONTROL_82,
  MIDI_CONTROL_83, MIDI_CONTROL_84, MIDI_CONTROL_85, MIDI_CONTROL_86,
  MIDI_CONTROL_87, MIDI_CONTROL_88, MIDI_CONTROL_89, MIDI_CONTROL_90,
  MIDI_CONTROL_91, MIDI_CONTROL_92, MIDI_CONTROL_93, MIDI_CONTROL_94,
  MIDI_CONTROL_95, MIDI_CONTROL_96, MIDI_CONTROL_97, MIDI_CONTROL_98,
  MIDI_CONTROL_99, MIDI_CONTROL_100, MIDI_CONTROL_101, MIDI_CONTROL_102,
  MIDI_CONTROL_103, MIDI_CONTROL_104, MIDI_CONTROL_105, MIDI_CONTROL_106,
  MIDI_CONTROL_107, MIDI_CONTROL_108, MIDI_CONTROL_109, MIDI_CONTROL_110,
  MIDI_CONTROL_111, MIDI_CONTROL_112, MIDI_CONTROL_113, MIDI_CONTROL_114,
  MIDI_CONTROL_115, MIDI_CONTROL_116, MIDI_CONTROL_117, MIDI_CONTROL_118,
  MIDI_CONTROL_119, MIDI_CONTROL_120, MIDI_CONTROL_121, MIDI_CONTROL_122,
  MIDI_CONTROL_123, MIDI_CONTROL_124, MIDI_CONTROL_125, MIDI_CONTROL_126,
  MIDI_CONTROL_127, MIDI_CONTROL_NONE, MIDI_CONTROL_CONTINUOUS_0, MIDI_CONTROL_CONTINUOUS_1,
  MIDI_CONTROL_CONTINUOUS_2, MIDI_CONTROL_CONTINUOUS_3, MIDI_CONTROL_CONTINUOUS_4, MIDI_CONTROL_CONTINUOUS_5,
  MIDI_CONTROL_CONTINUOUS_6, MIDI_CONTROL_CONTINUOUS_7, MIDI_CONTROL_CONTINUOUS_8, MIDI_CONTROL_CONTINUOUS_9,
  MIDI_CONTROL_CONTINUOUS_10, MIDI_CONTROL_CONTINUOUS_11, MIDI_CONTROL_CONTINUOUS_12, MIDI_CONTROL_CONTINUOUS_13,
  MIDI_CONTROL_CONTINUOUS_14, MIDI_CONTROL_CONTINUOUS_15, MIDI_CONTROL_CONTINUOUS_16, MIDI_CONTROL_CONTINUOUS_17,
  MIDI_CONTROL_CONTINUOUS_18, MIDI_CONTROL_CONTINUOUS_19, MIDI_CONTROL_CONTINUOUS_20, MIDI_CONTROL_CONTINUOUS_21,
  MIDI_CONTROL_CONTINUOUS_22, MIDI_CONTROL_CONTINUOUS_23, MIDI_CONTROL_CONTINUOUS_24, MIDI_CONTROL_CONTINUOUS_25,
  MIDI_CONTROL_CONTINUOUS_26, MIDI_CONTROL_CONTINUOUS_27, MIDI_CONTROL_CONTINUOUS_28, MIDI_CONTROL_CONTINUOUS_29,
  MIDI_CONTROL_CONTINUOUS_30, MIDI_CONTROL_CONTINUOUS_31, MIDI_CONTROL_0, MIDI_CONTROL_1,
  MIDI_CONTROL_2, MIDI_CONTROL_3, MIDI_CONTROL_4, MIDI_CONTROL_5,
  MIDI_CONTROL_6, MIDI_CONTROL_7, MIDI_CONTROL_8, MIDI_CONTROL_9,
  MIDI_CONTROL_10, MIDI_CONTROL_11, MIDI_CONTROL_12, MIDI_CONTROL_13,
  MIDI_CONTROL_14, MIDI_CONTROL_15, MIDI_CONTROL_16, MIDI_CONTROL_17,
  MIDI_CONTROL_18, MIDI_CONTROL_19, MIDI_CONTROL_20, MIDI_CONTROL_21,
  MIDI_CONTROL_22, MIDI_CONTROL_23, MIDI_CONTROL_24, MIDI_CONTROL_25,
  MIDI_CONTROL_26, MIDI_CONTROL_27, MIDI_CONTROL_28, MIDI_CONTROL_29,
  MIDI_CONTROL_30, MIDI_CONTROL_31, MIDI_CONTROL_32, MIDI_CONTROL_33,
  MIDI_CONTROL_34, MIDI_CONTROL_35, MIDI_CONTROL_36, MIDI_CONTROL_37,
  MIDI_CONTROL_38, MIDI_CONTROL_39, MIDI_CONTROL_40, MIDI_CONTROL_41,
  MIDI_CONTROL_42, MIDI_CONTROL_43, MIDI_CONTROL_44, MIDI_CONTROL_45,
  MIDI_CONTROL_46, MIDI_CONTROL_47, MIDI_CONTROL_48, MIDI_CONTROL_49,
  MIDI_CONTROL_50, MIDI_CONTROL_51, MIDI_CONTROL_52, MIDI_CONTROL_53,
  MIDI_CONTROL_54, MIDI_CONTROL_55, MIDI_CONTROL_56, MIDI_CONTROL_57,
  MIDI_CONTROL_58, MIDI_CONTROL_59, MIDI_CONTROL_60, MIDI_CONTROL_61,
  MIDI_CONTROL_62, MIDI_CONTROL_63, MIDI_CONTROL_64, MIDI_CONTROL_65,
  MIDI_CONTROL_66, MIDI_CONTROL_67, MIDI_CONTROL_68, MIDI_CONTROL_69,
  MIDI_CONTROL_70, MIDI_CONTROL_71, MIDI_CONTROL_72, MIDI_CONTROL_73,
  MIDI_CONTROL_74, MIDI_CONTROL_75, MIDI_CONTROL_76, MIDI_CONTROL_77,
  MIDI_CONTROL_78, MIDI_CONTROL_79, MIDI_CONTROL_80, MIDI_CONTROL_81,
  MIDI_CONTROL_82, MIDI_CONTROL_83, MIDI_CONTROL_84, MIDI_CONTROL_85,
  MIDI_CONTROL_86, MIDI_CONTROL_87, MIDI_CONTROL_88, MIDI_CONTROL_89,
  MIDI_CONTROL_90, MIDI_CONTROL_91, MIDI_CONTROL_92, MIDI_CONTROL_93,
  MIDI_CONTROL_94, MIDI_CONTROL_95, MIDI_CONTROL_96, MIDI_CONTROL_97,
  MIDI_CONTROL_98, MIDI_CONTROL_99, MIDI_CONTROL_100, MIDI_CONTROL_101,
  MIDI_CONTROL_102, MIDI_CONTROL_103, MIDI_CONTROL_104, MIDI_CONTROL_105,
  MIDI_CONTROL_106, MIDI_CONTROL_107, MIDI_CONTROL_108, MIDI_CONTROL_109,
  MIDI_CONTROL_110, MIDI_CONTROL_111, MIDI_CONTROL_112, MIDI_CONTROL_113,
  MIDI_CONTROL_114, MIDI_CONTROL_115, MIDI_CONTROL_116, MIDI_CONTROL_117,
  MIDI_CONTROL_118, MIDI_CONTROL_119, MIDI_CONTROL_120, MIDI_CONTROL_121,
  MIDI_CONTROL_122, MIDI_CONTROL_123, MIDI_CONTROL_124, MIDI_CONTROL_125,
  MIDI_CONTROL_126, MIDI_CONTROL_127
}
 
enum  MidiChannelEventType {
  MIDI_EVENT_NONE, MIDI_EVENT_NOTE_OFF, MIDI_EVENT_NOTE_ON, MIDI_EVENT_KEY_PRESSURE,
  MIDI_EVENT_CONTROL_CHANGE, MIDI_EVENT_PROGRAM_CHANGE, MIDI_EVENT_CHANNEL_PRESSURE, MIDI_EVENT_PITCH_BEND,
  MIDI_EVENT_SYS_EX, MIDI_EVENT_SONG_POINTER, MIDI_EVENT_SONG_SELECT, MIDI_EVENT_TUNE,
  MIDI_EVENT_TIMING_CLOCK, MIDI_EVENT_SONG_START, MIDI_EVENT_SONG_CONTINUE, MIDI_EVENT_SONG_STOP,
  MIDI_EVENT_ACTIVE_SENSING, MIDI_EVENT_SYSTEM_RESET, MIDI_EVENT_NONE, MIDI_EVENT_NOTE_OFF,
  MIDI_EVENT_NOTE_ON, MIDI_EVENT_KEY_PRESSURE, MIDI_EVENT_CONTROL_CHANGE, MIDI_EVENT_PROGRAM_CHANGE,
  MIDI_EVENT_CHANNEL_PRESSURE, MIDI_EVENT_PITCH_BEND, MIDI_EVENT_SYS_EX, MIDI_EVENT_SONG_POINTER,
  MIDI_EVENT_SONG_SELECT, MIDI_EVENT_TUNE, MIDI_EVENT_TIMING_CLOCK, MIDI_EVENT_SONG_START,
  MIDI_EVENT_SONG_CONTINUE, MIDI_EVENT_SONG_STOP, MIDI_EVENT_ACTIVE_SENSING, MIDI_EVENT_SYSTEM_RESET
}
 
enum  MidiControlType {
  MIDI_CONTROL_NONE, MIDI_CONTROL_CONTINUOUS_0, MIDI_CONTROL_CONTINUOUS_1, MIDI_CONTROL_CONTINUOUS_2,
  MIDI_CONTROL_CONTINUOUS_3, MIDI_CONTROL_CONTINUOUS_4, MIDI_CONTROL_CONTINUOUS_5, MIDI_CONTROL_CONTINUOUS_6,
  MIDI_CONTROL_CONTINUOUS_7, MIDI_CONTROL_CONTINUOUS_8, MIDI_CONTROL_CONTINUOUS_9, MIDI_CONTROL_CONTINUOUS_10,
  MIDI_CONTROL_CONTINUOUS_11, MIDI_CONTROL_CONTINUOUS_12, MIDI_CONTROL_CONTINUOUS_13, MIDI_CONTROL_CONTINUOUS_14,
  MIDI_CONTROL_CONTINUOUS_15, MIDI_CONTROL_CONTINUOUS_16, MIDI_CONTROL_CONTINUOUS_17, MIDI_CONTROL_CONTINUOUS_18,
  MIDI_CONTROL_CONTINUOUS_19, MIDI_CONTROL_CONTINUOUS_20, MIDI_CONTROL_CONTINUOUS_21, MIDI_CONTROL_CONTINUOUS_22,
  MIDI_CONTROL_CONTINUOUS_23, MIDI_CONTROL_CONTINUOUS_24, MIDI_CONTROL_CONTINUOUS_25, MIDI_CONTROL_CONTINUOUS_26,
  MIDI_CONTROL_CONTINUOUS_27, MIDI_CONTROL_CONTINUOUS_28, MIDI_CONTROL_CONTINUOUS_29, MIDI_CONTROL_CONTINUOUS_30,
  MIDI_CONTROL_CONTINUOUS_31, MIDI_CONTROL_0, MIDI_CONTROL_1, MIDI_CONTROL_2,
  MIDI_CONTROL_3, MIDI_CONTROL_4, MIDI_CONTROL_5, MIDI_CONTROL_6,
  MIDI_CONTROL_7, MIDI_CONTROL_8, MIDI_CONTROL_9, MIDI_CONTROL_10,
  MIDI_CONTROL_11, MIDI_CONTROL_12, MIDI_CONTROL_13, MIDI_CONTROL_14,
  MIDI_CONTROL_15, MIDI_CONTROL_16, MIDI_CONTROL_17, MIDI_CONTROL_18,
  MIDI_CONTROL_19, MIDI_CONTROL_20, MIDI_CONTROL_21, MIDI_CONTROL_22,
  MIDI_CONTROL_23, MIDI_CONTROL_24, MIDI_CONTROL_25, MIDI_CONTROL_26,
  MIDI_CONTROL_27, MIDI_CONTROL_28, MIDI_CONTROL_29, MIDI_CONTROL_30,
  MIDI_CONTROL_31, MIDI_CONTROL_32, MIDI_CONTROL_33, MIDI_CONTROL_34,
  MIDI_CONTROL_35, MIDI_CONTROL_36, MIDI_CONTROL_37, MIDI_CONTROL_38,
  MIDI_CONTROL_39, MIDI_CONTROL_40, MIDI_CONTROL_41, MIDI_CONTROL_42,
  MIDI_CONTROL_43, MIDI_CONTROL_44, MIDI_CONTROL_45, MIDI_CONTROL_46,
  MIDI_CONTROL_47, MIDI_CONTROL_48, MIDI_CONTROL_49, MIDI_CONTROL_50,
  MIDI_CONTROL_51, MIDI_CONTROL_52, MIDI_CONTROL_53, MIDI_CONTROL_54,
  MIDI_CONTROL_55, MIDI_CONTROL_56, MIDI_CONTROL_57, MIDI_CONTROL_58,
  MIDI_CONTROL_59, MIDI_CONTROL_60, MIDI_CONTROL_61, MIDI_CONTROL_62,
  MIDI_CONTROL_63, MIDI_CONTROL_64, MIDI_CONTROL_65, MIDI_CONTROL_66,
  MIDI_CONTROL_67, MIDI_CONTROL_68, MIDI_CONTROL_69, MIDI_CONTROL_70,
  MIDI_CONTROL_71, MIDI_CONTROL_72, MIDI_CONTROL_73, MIDI_CONTROL_74,
  MIDI_CONTROL_75, MIDI_CONTROL_76, MIDI_CONTROL_77, MIDI_CONTROL_78,
  MIDI_CONTROL_79, MIDI_CONTROL_80, MIDI_CONTROL_81, MIDI_CONTROL_82,
  MIDI_CONTROL_83, MIDI_CONTROL_84, MIDI_CONTROL_85, MIDI_CONTROL_86,
  MIDI_CONTROL_87, MIDI_CONTROL_88, MIDI_CONTROL_89, MIDI_CONTROL_90,
  MIDI_CONTROL_91, MIDI_CONTROL_92, MIDI_CONTROL_93, MIDI_CONTROL_94,
  MIDI_CONTROL_95, MIDI_CONTROL_96, MIDI_CONTROL_97, MIDI_CONTROL_98,
  MIDI_CONTROL_99, MIDI_CONTROL_100, MIDI_CONTROL_101, MIDI_CONTROL_102,
  MIDI_CONTROL_103, MIDI_CONTROL_104, MIDI_CONTROL_105, MIDI_CONTROL_106,
  MIDI_CONTROL_107, MIDI_CONTROL_108, MIDI_CONTROL_109, MIDI_CONTROL_110,
  MIDI_CONTROL_111, MIDI_CONTROL_112, MIDI_CONTROL_113, MIDI_CONTROL_114,
  MIDI_CONTROL_115, MIDI_CONTROL_116, MIDI_CONTROL_117, MIDI_CONTROL_118,
  MIDI_CONTROL_119, MIDI_CONTROL_120, MIDI_CONTROL_121, MIDI_CONTROL_122,
  MIDI_CONTROL_123, MIDI_CONTROL_124, MIDI_CONTROL_125, MIDI_CONTROL_126,
  MIDI_CONTROL_127, MIDI_CONTROL_NONE, MIDI_CONTROL_CONTINUOUS_0, MIDI_CONTROL_CONTINUOUS_1,
  MIDI_CONTROL_CONTINUOUS_2, MIDI_CONTROL_CONTINUOUS_3, MIDI_CONTROL_CONTINUOUS_4, MIDI_CONTROL_CONTINUOUS_5,
  MIDI_CONTROL_CONTINUOUS_6, MIDI_CONTROL_CONTINUOUS_7, MIDI_CONTROL_CONTINUOUS_8, MIDI_CONTROL_CONTINUOUS_9,
  MIDI_CONTROL_CONTINUOUS_10, MIDI_CONTROL_CONTINUOUS_11, MIDI_CONTROL_CONTINUOUS_12, MIDI_CONTROL_CONTINUOUS_13,
  MIDI_CONTROL_CONTINUOUS_14, MIDI_CONTROL_CONTINUOUS_15, MIDI_CONTROL_CONTINUOUS_16, MIDI_CONTROL_CONTINUOUS_17,
  MIDI_CONTROL_CONTINUOUS_18, MIDI_CONTROL_CONTINUOUS_19, MIDI_CONTROL_CONTINUOUS_20, MIDI_CONTROL_CONTINUOUS_21,
  MIDI_CONTROL_CONTINUOUS_22, MIDI_CONTROL_CONTINUOUS_23, MIDI_CONTROL_CONTINUOUS_24, MIDI_CONTROL_CONTINUOUS_25,
  MIDI_CONTROL_CONTINUOUS_26, MIDI_CONTROL_CONTINUOUS_27, MIDI_CONTROL_CONTINUOUS_28, MIDI_CONTROL_CONTINUOUS_29,
  MIDI_CONTROL_CONTINUOUS_30, MIDI_CONTROL_CONTINUOUS_31, MIDI_CONTROL_0, MIDI_CONTROL_1,
  MIDI_CONTROL_2, MIDI_CONTROL_3, MIDI_CONTROL_4, MIDI_CONTROL_5,
  MIDI_CONTROL_6, MIDI_CONTROL_7, MIDI_CONTROL_8, MIDI_CONTROL_9,
  MIDI_CONTROL_10, MIDI_CONTROL_11, MIDI_CONTROL_12, MIDI_CONTROL_13,
  MIDI_CONTROL_14, MIDI_CONTROL_15, MIDI_CONTROL_16, MIDI_CONTROL_17,
  MIDI_CONTROL_18, MIDI_CONTROL_19, MIDI_CONTROL_20, MIDI_CONTROL_21,
  MIDI_CONTROL_22, MIDI_CONTROL_23, MIDI_CONTROL_24, MIDI_CONTROL_25,
  MIDI_CONTROL_26, MIDI_CONTROL_27, MIDI_CONTROL_28, MIDI_CONTROL_29,
  MIDI_CONTROL_30, MIDI_CONTROL_31, MIDI_CONTROL_32, MIDI_CONTROL_33,
  MIDI_CONTROL_34, MIDI_CONTROL_35, MIDI_CONTROL_36, MIDI_CONTROL_37,
  MIDI_CONTROL_38, MIDI_CONTROL_39, MIDI_CONTROL_40, MIDI_CONTROL_41,
  MIDI_CONTROL_42, MIDI_CONTROL_43, MIDI_CONTROL_44, MIDI_CONTROL_45,
  MIDI_CONTROL_46, MIDI_CONTROL_47, MIDI_CONTROL_48, MIDI_CONTROL_49,
  MIDI_CONTROL_50, MIDI_CONTROL_51, MIDI_CONTROL_52, MIDI_CONTROL_53,
  MIDI_CONTROL_54, MIDI_CONTROL_55, MIDI_CONTROL_56, MIDI_CONTROL_57,
  MIDI_CONTROL_58, MIDI_CONTROL_59, MIDI_CONTROL_60, MIDI_CONTROL_61,
  MIDI_CONTROL_62, MIDI_CONTROL_63, MIDI_CONTROL_64, MIDI_CONTROL_65,
  MIDI_CONTROL_66, MIDI_CONTROL_67, MIDI_CONTROL_68, MIDI_CONTROL_69,
  MIDI_CONTROL_70, MIDI_CONTROL_71, MIDI_CONTROL_72, MIDI_CONTROL_73,
  MIDI_CONTROL_74, MIDI_CONTROL_75, MIDI_CONTROL_76, MIDI_CONTROL_77,
  MIDI_CONTROL_78, MIDI_CONTROL_79, MIDI_CONTROL_80, MIDI_CONTROL_81,
  MIDI_CONTROL_82, MIDI_CONTROL_83, MIDI_CONTROL_84, MIDI_CONTROL_85,
  MIDI_CONTROL_86, MIDI_CONTROL_87, MIDI_CONTROL_88, MIDI_CONTROL_89,
  MIDI_CONTROL_90, MIDI_CONTROL_91, MIDI_CONTROL_92, MIDI_CONTROL_93,
  MIDI_CONTROL_94, MIDI_CONTROL_95, MIDI_CONTROL_96, MIDI_CONTROL_97,
  MIDI_CONTROL_98, MIDI_CONTROL_99, MIDI_CONTROL_100, MIDI_CONTROL_101,
  MIDI_CONTROL_102, MIDI_CONTROL_103, MIDI_CONTROL_104, MIDI_CONTROL_105,
  MIDI_CONTROL_106, MIDI_CONTROL_107, MIDI_CONTROL_108, MIDI_CONTROL_109,
  MIDI_CONTROL_110, MIDI_CONTROL_111, MIDI_CONTROL_112, MIDI_CONTROL_113,
  MIDI_CONTROL_114, MIDI_CONTROL_115, MIDI_CONTROL_116, MIDI_CONTROL_117,
  MIDI_CONTROL_118, MIDI_CONTROL_119, MIDI_CONTROL_120, MIDI_CONTROL_121,
  MIDI_CONTROL_122, MIDI_CONTROL_123, MIDI_CONTROL_124, MIDI_CONTROL_125,
  MIDI_CONTROL_126, MIDI_CONTROL_127
}
 
enum  MidiChannelEventType {
  MIDI_EVENT_NONE, MIDI_EVENT_NOTE_OFF, MIDI_EVENT_NOTE_ON, MIDI_EVENT_KEY_PRESSURE,
  MIDI_EVENT_CONTROL_CHANGE, MIDI_EVENT_PROGRAM_CHANGE, MIDI_EVENT_CHANNEL_PRESSURE, MIDI_EVENT_PITCH_BEND,
  MIDI_EVENT_SYS_EX, MIDI_EVENT_SONG_POINTER, MIDI_EVENT_SONG_SELECT, MIDI_EVENT_TUNE,
  MIDI_EVENT_TIMING_CLOCK, MIDI_EVENT_SONG_START, MIDI_EVENT_SONG_CONTINUE, MIDI_EVENT_SONG_STOP,
  MIDI_EVENT_ACTIVE_SENSING, MIDI_EVENT_SYSTEM_RESET, MIDI_EVENT_NONE, MIDI_EVENT_NOTE_OFF,
  MIDI_EVENT_NOTE_ON, MIDI_EVENT_KEY_PRESSURE, MIDI_EVENT_CONTROL_CHANGE, MIDI_EVENT_PROGRAM_CHANGE,
  MIDI_EVENT_CHANNEL_PRESSURE, MIDI_EVENT_PITCH_BEND, MIDI_EVENT_SYS_EX, MIDI_EVENT_SONG_POINTER,
  MIDI_EVENT_SONG_SELECT, MIDI_EVENT_TUNE, MIDI_EVENT_TIMING_CLOCK, MIDI_EVENT_SONG_START,
  MIDI_EVENT_SONG_CONTINUE, MIDI_EVENT_SONG_STOP, MIDI_EVENT_ACTIVE_SENSING, MIDI_EVENT_SYSTEM_RESET
}
 
enum  ProcessCost { NORMAL, CHEAP, EXPENSIVE }
 
enum  FlacZOffset { NO_ZOFFSET, ADD_ZOFFSET }
 
enum  BiquadFilterType { BIQUAD_FILTER_RESONANT_LOWPASS, BIQUAD_FILTER_RESONANT_HIGHPASS }
 
enum  RegistrationType { REGISTER_PLUGIN, REGISTER_SCRIPT, REGISTER_DONE }
 
enum  ErrorType {
  ERROR_NONE, ERROR_INTERNAL, ERROR_UNKNOWN, ERROR_IO,
  ERROR_PERMS, ERROR_FILE_BUSY, ERROR_FILE_EXISTS, ERROR_FILE_EOF,
  ERROR_FILE_EMPTY, ERROR_FILE_NOT_FOUND, ERROR_FILE_IS_DIR, ERROR_FILE_OPEN_FAILED,
  ERROR_FILE_SEEK_FAILED, ERROR_FILE_READ_FAILED, ERROR_FILE_WRITE_FAILED, ERROR_MANY_FILES,
  ERROR_NO_FILES, ERROR_NO_SPACE, ERROR_NO_MEMORY, ERROR_NO_HEADER,
  ERROR_NO_SEEK_INFO, ERROR_NO_DATA, ERROR_DATA_CORRUPT, ERROR_WRONG_N_CHANNELS,
  ERROR_FORMAT_INVALID, ERROR_FORMAT_UNKNOWN, ERROR_DATA_UNMATCHED, ERROR_TEMP,
  ERROR_WAVE_NOT_FOUND, ERROR_CODEC_FAILURE, ERROR_UNIMPLEMENTED, ERROR_INVALID_PROPERTY,
  ERROR_INVALID_MIDI_CONTROL, ERROR_PARSE_ERROR, ERROR_SPAWN, ERROR_DEVICE_NOT_AVAILABLE,
  ERROR_DEVICE_ASYNC, ERROR_DEVICE_BUSY, ERROR_DEVICE_FORMAT, ERROR_DEVICE_BUFFER,
  ERROR_DEVICE_LATENCY, ERROR_DEVICE_CHANNELS, ERROR_DEVICE_FREQUENCY, ERROR_DEVICES_MISMATCH,
  ERROR_SOURCE_NO_SUCH_MODULE, ERROR_SOURCE_NO_SUCH_ICHANNEL, ERROR_SOURCE_NO_SUCH_OCHANNEL, ERROR_SOURCE_NO_SUCH_CONNECTION,
  ERROR_SOURCE_PRIVATE_ICHANNEL, ERROR_SOURCE_ICHANNEL_IN_USE, ERROR_SOURCE_CHANNELS_CONNECTED, ERROR_SOURCE_CONNECTION_INVALID,
  ERROR_SOURCE_PARENT_MISMATCH, ERROR_SOURCE_BAD_LOOPBACK, ERROR_SOURCE_BUSY, ERROR_SOURCE_TYPE_INVALID,
  ERROR_PROC_NOT_FOUND, ERROR_PROC_BUSY, ERROR_PROC_PARAM_INVAL, ERROR_PROC_EXECUTION,
  ERROR_PROC_ABORT, ERROR_NO_ENTRY, ERROR_NO_EVENT, ERROR_NO_TARGET,
  ERROR_NOT_OWNER, ERROR_INVALID_OFFSET, ERROR_INVALID_DURATION, ERROR_INVALID_OVERLAP
}
 
enum  MidiSignalType {
  MIDI_SIGNAL_PROGRAM, MIDI_SIGNAL_PRESSURE, MIDI_SIGNAL_PITCH_BEND, MIDI_SIGNAL_VELOCITY,
  MIDI_SIGNAL_FINE_TUNE, MIDI_SIGNAL_CONTINUOUS_0, MIDI_SIGNAL_CONTINUOUS_1, MIDI_SIGNAL_CONTINUOUS_2,
  MIDI_SIGNAL_CONTINUOUS_3, MIDI_SIGNAL_CONTINUOUS_4, MIDI_SIGNAL_CONTINUOUS_5, MIDI_SIGNAL_CONTINUOUS_6,
  MIDI_SIGNAL_CONTINUOUS_7, MIDI_SIGNAL_CONTINUOUS_8, MIDI_SIGNAL_CONTINUOUS_9, MIDI_SIGNAL_CONTINUOUS_10,
  MIDI_SIGNAL_CONTINUOUS_11, MIDI_SIGNAL_CONTINUOUS_12, MIDI_SIGNAL_CONTINUOUS_13, MIDI_SIGNAL_CONTINUOUS_14,
  MIDI_SIGNAL_CONTINUOUS_15, MIDI_SIGNAL_CONTINUOUS_16, MIDI_SIGNAL_CONTINUOUS_17, MIDI_SIGNAL_CONTINUOUS_18,
  MIDI_SIGNAL_CONTINUOUS_19, MIDI_SIGNAL_CONTINUOUS_20, MIDI_SIGNAL_CONTINUOUS_21, MIDI_SIGNAL_CONTINUOUS_22,
  MIDI_SIGNAL_CONTINUOUS_23, MIDI_SIGNAL_CONTINUOUS_24, MIDI_SIGNAL_CONTINUOUS_25, MIDI_SIGNAL_CONTINUOUS_26,
  MIDI_SIGNAL_CONTINUOUS_27, MIDI_SIGNAL_CONTINUOUS_28, MIDI_SIGNAL_CONTINUOUS_29, MIDI_SIGNAL_CONTINUOUS_30,
  MIDI_SIGNAL_CONTINUOUS_31, MIDI_SIGNAL_CONSTANT_HIGH, MIDI_SIGNAL_CONSTANT_CENTER, MIDI_SIGNAL_CONSTANT_LOW,
  MIDI_SIGNAL_CONSTANT_NEGATIVE_CENTER, MIDI_SIGNAL_CONSTANT_NEGATIVE_HIGH, MIDI_SIGNAL_PARAMETER, MIDI_SIGNAL_NON_PARAMETER,
  MIDI_SIGNAL_CONTROL_0, MIDI_SIGNAL_CONTROL_1, MIDI_SIGNAL_CONTROL_2, MIDI_SIGNAL_CONTROL_3,
  MIDI_SIGNAL_CONTROL_4, MIDI_SIGNAL_CONTROL_5, MIDI_SIGNAL_CONTROL_6, MIDI_SIGNAL_CONTROL_7,
  MIDI_SIGNAL_CONTROL_8, MIDI_SIGNAL_CONTROL_9, MIDI_SIGNAL_CONTROL_10, MIDI_SIGNAL_CONTROL_11,
  MIDI_SIGNAL_CONTROL_12, MIDI_SIGNAL_CONTROL_13, MIDI_SIGNAL_CONTROL_14, MIDI_SIGNAL_CONTROL_15,
  MIDI_SIGNAL_CONTROL_16, MIDI_SIGNAL_CONTROL_17, MIDI_SIGNAL_CONTROL_18, MIDI_SIGNAL_CONTROL_19,
  MIDI_SIGNAL_CONTROL_20, MIDI_SIGNAL_CONTROL_21, MIDI_SIGNAL_CONTROL_22, MIDI_SIGNAL_CONTROL_23,
  MIDI_SIGNAL_CONTROL_24, MIDI_SIGNAL_CONTROL_25, MIDI_SIGNAL_CONTROL_26, MIDI_SIGNAL_CONTROL_27,
  MIDI_SIGNAL_CONTROL_28, MIDI_SIGNAL_CONTROL_29, MIDI_SIGNAL_CONTROL_30, MIDI_SIGNAL_CONTROL_31,
  MIDI_SIGNAL_CONTROL_32, MIDI_SIGNAL_CONTROL_33, MIDI_SIGNAL_CONTROL_34, MIDI_SIGNAL_CONTROL_35,
  MIDI_SIGNAL_CONTROL_36, MIDI_SIGNAL_CONTROL_37, MIDI_SIGNAL_CONTROL_38, MIDI_SIGNAL_CONTROL_39,
  MIDI_SIGNAL_CONTROL_40, MIDI_SIGNAL_CONTROL_41, MIDI_SIGNAL_CONTROL_42, MIDI_SIGNAL_CONTROL_43,
  MIDI_SIGNAL_CONTROL_44, MIDI_SIGNAL_CONTROL_45, MIDI_SIGNAL_CONTROL_46, MIDI_SIGNAL_CONTROL_47,
  MIDI_SIGNAL_CONTROL_48, MIDI_SIGNAL_CONTROL_49, MIDI_SIGNAL_CONTROL_50, MIDI_SIGNAL_CONTROL_51,
  MIDI_SIGNAL_CONTROL_52, MIDI_SIGNAL_CONTROL_53, MIDI_SIGNAL_CONTROL_54, MIDI_SIGNAL_CONTROL_55,
  MIDI_SIGNAL_CONTROL_56, MIDI_SIGNAL_CONTROL_57, MIDI_SIGNAL_CONTROL_58, MIDI_SIGNAL_CONTROL_59,
  MIDI_SIGNAL_CONTROL_60, MIDI_SIGNAL_CONTROL_61, MIDI_SIGNAL_CONTROL_62, MIDI_SIGNAL_CONTROL_63,
  MIDI_SIGNAL_CONTROL_64, MIDI_SIGNAL_CONTROL_65, MIDI_SIGNAL_CONTROL_66, MIDI_SIGNAL_CONTROL_67,
  MIDI_SIGNAL_CONTROL_68, MIDI_SIGNAL_CONTROL_69, MIDI_SIGNAL_CONTROL_70, MIDI_SIGNAL_CONTROL_71,
  MIDI_SIGNAL_CONTROL_72, MIDI_SIGNAL_CONTROL_73, MIDI_SIGNAL_CONTROL_74, MIDI_SIGNAL_CONTROL_75,
  MIDI_SIGNAL_CONTROL_76, MIDI_SIGNAL_CONTROL_77, MIDI_SIGNAL_CONTROL_78, MIDI_SIGNAL_CONTROL_79,
  MIDI_SIGNAL_CONTROL_80, MIDI_SIGNAL_CONTROL_81, MIDI_SIGNAL_CONTROL_82, MIDI_SIGNAL_CONTROL_83,
  MIDI_SIGNAL_CONTROL_84, MIDI_SIGNAL_CONTROL_85, MIDI_SIGNAL_CONTROL_86, MIDI_SIGNAL_CONTROL_87,
  MIDI_SIGNAL_CONTROL_88, MIDI_SIGNAL_CONTROL_89, MIDI_SIGNAL_CONTROL_90, MIDI_SIGNAL_CONTROL_91,
  MIDI_SIGNAL_CONTROL_92, MIDI_SIGNAL_CONTROL_93, MIDI_SIGNAL_CONTROL_94, MIDI_SIGNAL_CONTROL_95,
  MIDI_SIGNAL_CONTROL_96, MIDI_SIGNAL_CONTROL_97, MIDI_SIGNAL_CONTROL_98, MIDI_SIGNAL_CONTROL_99,
  MIDI_SIGNAL_CONTROL_100, MIDI_SIGNAL_CONTROL_101, MIDI_SIGNAL_CONTROL_102, MIDI_SIGNAL_CONTROL_103,
  MIDI_SIGNAL_CONTROL_104, MIDI_SIGNAL_CONTROL_105, MIDI_SIGNAL_CONTROL_106, MIDI_SIGNAL_CONTROL_107,
  MIDI_SIGNAL_CONTROL_108, MIDI_SIGNAL_CONTROL_109, MIDI_SIGNAL_CONTROL_110, MIDI_SIGNAL_CONTROL_111,
  MIDI_SIGNAL_CONTROL_112, MIDI_SIGNAL_CONTROL_113, MIDI_SIGNAL_CONTROL_114, MIDI_SIGNAL_CONTROL_115,
  MIDI_SIGNAL_CONTROL_116, MIDI_SIGNAL_CONTROL_117, MIDI_SIGNAL_CONTROL_118, MIDI_SIGNAL_CONTROL_119,
  MIDI_SIGNAL_CONTROL_120, MIDI_SIGNAL_CONTROL_121, MIDI_SIGNAL_CONTROL_122, MIDI_SIGNAL_CONTROL_123,
  MIDI_SIGNAL_CONTROL_124, MIDI_SIGNAL_CONTROL_125, MIDI_SIGNAL_CONTROL_126, MIDI_SIGNAL_CONTROL_127
}
 
enum  ProjectState { PROJECT_INACTIVE, PROJECT_ACTIVE, PROJECT_PLAYING }
 
enum  StandardOscWaveType {
  STANDARD_OSC_SINE, STANDARD_OSC_TRIANGLE, STANDARD_OSC_SAW_RISE, STANDARD_OSC_SAW_FALL,
  STANDARD_OSC_PEAK_RISE, STANDARD_OSC_PEAK_FALL, STANDARD_OSC_MOOG_SAW, STANDARD_OSC_SQUARE,
  STANDARD_OSC_PULSE
}
 
enum  InstallpathType {
  INSTALLPATH_BSEINCLUDEDIR, INSTALLPATH_BINDIR, INSTALLPATH_LOCALEBASE, INSTALLPATH_LADSPA,
  INSTALLPATH_DOCDIR, INSTALLPATH_USER_DATA, INSTALLPATH_BSELIBDIR, INSTALLPATH_BSELIBDIR_PLUGINS,
  INSTALLPATH_BSELIBDIR_DRIVERS, INSTALLPATH_DATADIR, INSTALLPATH_DATADIR_DEMO, INSTALLPATH_DATADIR_SAMPLES,
  INSTALLPATH_DATADIR_EFFECTS, INSTALLPATH_DATADIR_INSTRUMENTS, INSTALLPATH_DATADIR_SCRIPTS, INSTALLPATH_DATADIR_IMAGES,
  INSTALLPATH_DATADIR_KEYS, INSTALLPATH_DATADIR_SKINS, INSTALLPATH_BEASTEXECDIR, INSTALLPATH_PYBEASTDIR
}
 

Functions

const charerror_blurb (Bse::Error error_value)
 Retrieve the description of an error value.
 
ServerHandle init_server_instance ()
 Retrieve a handle for the Bse::Server instance managing the Bse thread.
 
Rapicorn::Aida::ClientConnectionP init_server_connection ()
 Retrieve the ClientConnection used for RPC communication with the Bse thread.
 
 BSE_CXX_REGISTER_ALL_TYPES_FROM_BSEBASICS_IDL ()
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_StringSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_StringSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PixelSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PixelSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_Icon &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_Icon &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_AuxData &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_AuxData &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_AuxDataSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_AuxDataSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_UserMessage &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_UserMessage &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_SongTiming &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_SongTiming &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_NoteDescription &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_NoteDescription &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartNote &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartNote &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartNoteSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartNoteSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartControl &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartControl &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartControlSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartControlSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartLink &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartLink &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_PartLinkSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_PartLinkSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_TrackPart &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_TrackPart &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_TrackPartSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_TrackPartSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ClnT_SampleFileInfo &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ClnT_SampleFileInfo &)
 
const String tokenize_gtype (GType t)
 
template<class T >
CxxBasecast (T *t)
 
const GEnumValue EnumValue (int int_value, const char *value_name, const char *value_nick)
 
template<class Derived , class Base >
void assert_derived_from (void)
 
template<class C >
const GType bse_type_id_wrapper (const char *type_name)
 
CategorySeq categories_match (SfiString pattern)
 
CategorySeq categories_match_typed (SfiString pattern, SfiString type)
 
void script_add_action (SfiString action, SfiString name, SfiString blurb)
 
Janitor script_janitor ()
 
void script_send_message (SfiString domain, SfiString msg_type, SfiString title, SfiString primary, SfiString secondary, SfiString details, SfiString config_check)
 
void script_progress (Real progress)
 
void script_quit ()
 
void script_remove_action (SfiString action)
 
void script_set_status (SfiString message)
 
void wave_osc_mass_seek_perc (It3mSeq wosc_seq, Real pos_perc)
 
 BSE_CXX_REGISTER_ALL_TYPES_FROM_BSEPROBE_IDL ()
 
void source_request_probes (Source source, Int ochannel_id, ProbeFeatures probe_features)
 
void source_mass_request (ProbeRequestSeq prseq)
 
Int source_get_mix_freq (Source obj)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_StringSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_StringSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PixelSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PixelSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_Icon &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_Icon &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_AuxData &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_AuxData &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_AuxDataSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_AuxDataSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const TestObjectIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, TestObjectIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, TestObjectIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_UserMessage &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_UserMessage &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_SongTiming &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_SongTiming &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_NoteDescription &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_NoteDescription &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ObjectIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ObjectIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ObjectIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ItemIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ItemIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ItemIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartNote &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartNote &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartNoteSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartNoteSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartControl &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartControl &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartControlSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartControlSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const PartIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, PartIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, PartIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SourceIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SourceIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SourceIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ContextMergerIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ContextMergerIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ContextMergerIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ContainerIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ContainerIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ContainerIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SuperIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SuperIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SuperIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SNetIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SNetIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SNetIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const CSynthIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, CSynthIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, CSynthIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SubSynthIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SubSynthIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SubSynthIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const TrackIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, TrackIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, TrackIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartLink &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartLink &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_PartLinkSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_PartLinkSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_TrackPart &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_TrackPart &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_TrackPartSeq &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_TrackPartSeq &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const BusIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, BusIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, BusIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SongIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SongIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SongIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const SrvT_SampleFileInfo &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, SrvT_SampleFileInfo &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const EditableSampleIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, EditableSampleIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, EditableSampleIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const WaveIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, WaveIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, WaveIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const WaveRepoIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, WaveRepoIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, WaveRepoIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const MidiNotifierIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, MidiNotifierIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, MidiNotifierIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const MidiSynthIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, MidiSynthIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, MidiSynthIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ProjectIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ProjectIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ProjectIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const PcmWriterIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, PcmWriterIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, PcmWriterIfaceP &)
 
void operator<<= (Rapicorn::Aida::ProtoMsg &, const ServerIfaceP &)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ServerIface *&)
 
void operator>>= (Rapicorn::Aida::ProtoReader &, ServerIfaceP &)
 
SfiGlueContext * init_glue_context (const gchar *client, const std::function< void()> &caller_wakeup)
 Create SFI glue layer context. More...
 
void init_async (int *argc, char **argv, const char *app_name, const StringVector &args)
 Initialize and start BSE. More...
 
bool init_needed ()
 Check wether init_async() still needs to be called.
 
Icon icon_from_pixstream (const uint8 *pixstream)
 Create a Bse::Icon from a GdkPixbuf pixstream.
 
Icon icon_from_pixstream (const guint8 *pixstream)
 
void installpath_override (const String &topdir)
 
std::string installpath (InstallpathType installpath_type)
 Provide installation directories and searchpaths for various types of data.
 
std::string version ()
 Provide a string containing the BSE library version number.
 
SfiChoiceValues choice_values_from_enum_values (const String &enumname, const ::Rapicorn::Aida::EnumValueVector &evvec)
 
template<class EnumType >
SfiChoiceValues choice_values_from_enum ()
 
bool sfi_pspecs_rec_fields_cache (const std::type_info &type_info, SfiRecFields *rf, bool assign)
 
bool sfi_pspecs_seq_field_cache (const std::type_info &type_info, GParamSpec **pp, bool assign)
 
bool sfi_pspecs_acs_fields_cache (const std::type_info &type_info, std::vector< GParamSpec * > **pspecspp, bool assign)
 
template<class Visitable >
void sfi_rec_to_visitable (SfiRec *rec, Visitable &visitable)
 
template<class Visitable >
SfiRec * sfi_rec_new_from_visitable (Visitable &visitable)
 
template<class Visitable >
void sfi_seq_to_visitable (SfiSeq *seq, Visitable &visitable)
 
template<class Visitable >
SfiSeq * sfi_seq_new_from_visitable (Visitable &visitable)
 
template<class Visitable >
SfiRecFields sfi_pspecs_rec_fields_from_visitable (Visitable &visitable)
 
template<class Visitable >
GParamSpec * sfi_pspec_seq_field_from_visitable (Visitable &visitable)
 
template<class Visitable >
const std::vector< GParamSpec * > & sfi_pspecs_fields_from_accessor_visitable (Visitable &visitable)
 
void bse_debug (const char *key, const char *file_path, const int line, const String &message)
 Issue a debugging message, configurable via #$BSE_DEBUG.
 
bool bse_debug_enabled (const char *key)
 Check if debugging is enabled for key. More...
 
bool _bse_debug_enabled (const char *key)
 
bool bse_flipper_check (const char *key)
 Check if the feature toggle key is enabled in #$BSE_FLIPPER.
 

Variables

Const MAXINT63
 
Const MAXINT32
 
Const MAXINT31
 
Const MININT31
 
Const MAXFLOAT64
 
Const MIN_NOTE
 
Const MAX_NOTE
 
Const NOTE_VOID
 
Const KAMMER_NOTE
 Value represents unparsable/unknown notes.
 
Const KAMMER_FREQ
 Kammer note, representing the kammer frequency's MIDI note value for A' or A4.
 
Const KAMMER_OCTAVE
 Pitch Standard, see also: https://en.wikipedia.org/wiki/A440_(pitch_standard)
 
Const MIN_OCTAVE
 Octave number for MIDI A'.
 
Const MAX_OCTAVE
 Octave of MIN_NOTE.
 
Const MIN_FINE_TUNE
 Octave of MAX_NOTE.
 
Const MAX_FINE_TUNE
 
Const MIN_BPM
 
Const MAX_BPM
 
Const MIN_TRANSPOSE
 
Const MAX_TRANSPOSE
 
Const GUI
 
Const STORAGE
 
Const STANDARD
 
Const NOTEHINTS
 
Const FINETUNEHINTS
 
Const VELOCITYHINTS
 
 MidiControlType
 
 BseMidiControlType
 
v
 
 MidiChannelEventType
 
 BseMidiChannelEventType
 
 TypeSeq
 
 FloatSeq
 
 NoteSeq
 
 It3mSeq
 
 P1xelSeq
 
 CategorySeq
 
 MidiChannelEvent
 
 PropertyCandidates
 
 NoteSequence
 
 Ic0n
 
 Category
 
 GConfig
 
Const READWRITE
 
Const STANDARD_RDONLY
 
Const GUI_RDONLY
 
Const GUI_READABLE
 
Const SKIP_DEFAULT
 
Const SKIP_UNDO
 
Const DEFAULT
 
Const MAXINT
 
Const MININT
 
Const MAXNUM
 
Const MINNUM
 
Const MINDB
 
Const DEFAULT_AUTHOR
 
Const DEFAULT_LICENSE
 
Const USER_DATA_PATH
 
Const DEFAULT_SAMPLE_PATH
 
Const DEFAULT_EFFECTS_PATH
 
Const DEFAULT_INSTRUMENTS_PATH
 
Const DEFAULT_SCRIPTS_PATH
 
Const DEFAULT_PLUGINS_PATH
 
 BusModule
 
 bool
 
 b
 
 no_cast
 
signed int
 
signed i
 
 uint
 
signed long
 
signed long num
 
signed long n
 
 float
 
 real
 
 r
 
 double
 
 gpointer
 
 pointer
 
GParamSpec pspec
 
GParamSpec P
 
 string
 
 s
 
char const_cast< char * >
 
GObject object
 
GObject O
 
BseObject reinterpret_cast< BseObject * >
 
BseObject reinterpret_cast< GObject * >
 
BseItem reinterpret_cast< BseItem * >
 
BseSource reinterpret_cast< BseSource * >
 
 CxxBase
 
 BseSource
 
 NULL
 
 bse_cxx_base_class_base_init
 
 Effect
 
 BseCxxBase
 
 ProbeSeq
 
 ProbeRequestSeq
 
 ProbeFeatures
 
 Probe
 
 ProbeRequest
 
 Amplifier
 
 Balance
 
 CoreHook
 
 Noise
 
 Summation
 
bool volatile _cached_bse_debug
 Caching flag to inhibit useless bse_debug() calls.
 

Detailed Description

The Bse namespace contains all functions of the synthesis engine.

Enumeration Type Documentation

Enumerator
ERROR 

Indicate a message about an error condition.

WARNING 

Indicate a message about a possibly harmful condition.

INFO 

Indicate an informational message.

DEBUG 

Indicate a debugging message (usually insignificant).

Function Documentation

bool Bse::bse_debug_enabled ( const char key = NULL)
inline

Check if debugging is enabled for key.

This function checks if #$BSE_DEBUG contains key or "all" and returns true if debugging is enabled for the given key. The key argument may be NULL in which case the function checks if general debugging is enabled.

void Bse::init_async ( int *  argc,
char **  argv,
const char app_name,
const StringVector &  args 
)

Initialize and start BSE.

Initialize the BSE library and start the main BSE thread. Arguments specific to BSE are removed from argc / argv.

SfiGlueContext * Bse::init_glue_context ( const gchar *  client,
const std::function< void()> &  caller_wakeup 
)

Create SFI glue layer context.

Create and push an SFI glue layer context for the calling thread, to enable communications with the main BSE thread library.