BEAST/BSE - Better Audio System and Sound Engine
0.8.2
|
00001 // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html 00002 #ifndef __BSE_MAIN_H__ 00003 #define __BSE_MAIN_H__ 00004 #include <bse/bse.hh> /* initialization */ 00005 #include <bse/bsetype.hh> 00006 G_BEGIN_DECLS 00007 00008 // == BSE Initialization == 00009 void bse_init_textdomain_only (void); 00010 void _bse_init_async (int *argc, char **argv, const char *app_name, const Bse::StringVector &args); 00011 SfiGlueContext* _bse_glue_context_create (const char *client, const std::function<void()> &caller_wakeup); 00012 const char* bse_check_version (guint required_major, 00013 guint required_minor, 00014 guint required_micro); // prototyped in bse.hh 00015 00016 /* initialization for internal utilities */ 00017 void bse_init_inprocess (int *argc, char **argv, const char *app_name, const Bse::StringVector &args = Bse::StringVector()); 00018 void bse_init_test (int *argc, char **argv, const Bse::StringVector &args = Bse::StringVector()); 00019 void bse_main_wakeup (); 00020 00021 /* --- global macros --- */ 00022 #define BSE_THREADS_ENTER() // bse_main_global_lock () 00023 #define BSE_THREADS_LEAVE() // bse_main_global_unlock () 00024 #define BSE_DBG_EXT (bse_main_args->debug_extensions != FALSE) 00025 #define BSE_CONFIG(field) (bse_main_args->field) 00026 00027 /* --- argc/argv overide settings --- */ 00028 struct BseMainArgs { 00029 uint n_processors; 00030 /* # values to pad around wave chunk blocks per channel */ 00031 uint wave_chunk_padding; 00032 uint wave_chunk_big_pad; 00033 /* data (file) cache block size (aligned to power of 2) */ 00034 uint dcache_block_size; 00035 /* amount of bytes to spare for memory cache */ 00036 uint dcache_cache_memory; 00037 uint midi_kammer_note; 00038 /* kammer frequency, normally 440Hz, historically 435Hz */ 00039 double kammer_freq; 00040 const char *path_binaries; 00041 const char *bse_rcfile; 00042 const char *override_plugin_globs; 00043 const char *override_script_path; 00044 const char *override_sample_path; 00045 bool stand_alone; 00046 bool allow_randomization; 00047 bool force_fpu; 00048 bool load_core_plugins; 00049 bool load_core_scripts; 00050 bool debug_extensions; 00051 bool load_drivers_early; 00052 bool dump_driver_list; 00053 int latency; 00054 int mixing_freq; 00055 int control_freq; 00056 SfiRing *pcm_drivers; 00057 SfiRing *midi_drivers; 00058 }; 00059 00060 /* --- internal --- */ 00061 void _bse_init_c_wrappers (); 00062 extern BseMainArgs *bse_main_args; 00063 extern GMainContext *bse_main_context; 00064 00065 G_END_DECLS 00066 00067 #endif /* __BSE_MAIN_H__ */