00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef _FLUIDSYNTH_SETTINGS_H
00022 #define _FLUIDSYNTH_SETTINGS_H
00023
00024 #ifdef __cplusplus
00025 extern "C" {
00026 #endif
00027
00059
00060
00061
00062
00063
00064
00065 #define FLUID_HINT_BOUNDED_BELOW 0x1
00066
00067
00068
00069
00070
00071
00072
00073 #define FLUID_HINT_BOUNDED_ABOVE 0x2
00074
00075
00076
00077
00078
00079
00080
00081 #define FLUID_HINT_TOGGLED 0x4
00082
00083
00084
00085
00086
00087
00088
00089 #define FLUID_HINT_SAMPLE_RATE 0x8
00090
00091
00092
00093
00094 #define FLUID_HINT_LOGARITHMIC 0x10
00095
00096
00097
00098
00099
00100
00101
00102 #define FLUID_HINT_INTEGER 0x20
00103
00104
00105 #define FLUID_HINT_FILENAME 0x01
00106 #define FLUID_HINT_OPTIONLIST 0x02
00107
00108
00109
00110 enum fluid_types_enum {
00111 FLUID_NO_TYPE = -1,
00112 FLUID_NUM_TYPE,
00113 FLUID_INT_TYPE,
00114 FLUID_STR_TYPE,
00115 FLUID_SET_TYPE
00116 };
00117
00118
00119 FLUIDSYNTH_API fluid_settings_t* new_fluid_settings(void);
00120 FLUIDSYNTH_API void delete_fluid_settings(fluid_settings_t* settings);
00121
00122
00123
00124 FLUIDSYNTH_API
00125 int fluid_settings_get_type(fluid_settings_t* settings, char* name);
00126
00127 FLUIDSYNTH_API
00128 int fluid_settings_get_hints(fluid_settings_t* settings, char* name);
00129
00131 FLUIDSYNTH_API int fluid_settings_is_realtime(fluid_settings_t* settings, char* name);
00132
00133
00135 FLUIDSYNTH_API
00136 int fluid_settings_setstr(fluid_settings_t* settings, char* name, char* str);
00137
00147 FLUIDSYNTH_API
00148 int fluid_settings_getstr(fluid_settings_t* settings, char* name, char** str);
00149
00151 FLUIDSYNTH_API
00152 char* fluid_settings_getstr_default(fluid_settings_t* settings, char* name);
00153
00159 FLUIDSYNTH_API
00160 int fluid_settings_str_equal(fluid_settings_t* settings, char* name, char* value);
00161
00162
00164 FLUIDSYNTH_API
00165 int fluid_settings_setnum(fluid_settings_t* settings, char* name, double val);
00166
00168 FLUIDSYNTH_API
00169 int fluid_settings_getnum(fluid_settings_t* settings, char* name, double* val);
00170
00172 FLUIDSYNTH_API
00173 double fluid_settings_getnum_default(fluid_settings_t* settings, char* name);
00174
00176 FLUIDSYNTH_API
00177 void fluid_settings_getnum_range(fluid_settings_t* settings, char* name,
00178 double* min, double* max);
00179
00180
00182 FLUIDSYNTH_API
00183 int fluid_settings_setint(fluid_settings_t* settings, char* name, int val);
00184
00186 FLUIDSYNTH_API
00187 int fluid_settings_getint(fluid_settings_t* settings, char* name, int* val);
00188
00190 FLUIDSYNTH_API
00191 int fluid_settings_getint_default(fluid_settings_t* settings, char* name);
00192
00194 FLUIDSYNTH_API
00195 void fluid_settings_getint_range(fluid_settings_t* settings, char* name,
00196 int* min, int* max);
00197
00198
00199
00200 typedef void (*fluid_settings_foreach_option_t)(void* data, char* name, char* option);
00201
00202
00203
00204 FLUIDSYNTH_API
00205 void fluid_settings_foreach_option(fluid_settings_t* settings,
00206 char* name, void* data,
00207 fluid_settings_foreach_option_t func);
00208
00209
00210 typedef void (*fluid_settings_foreach_t)(void* data, char* s, int type);
00211
00212 FLUIDSYNTH_API
00213 void fluid_settings_foreach(fluid_settings_t* settings, void* data,
00214 fluid_settings_foreach_t func);
00215
00216
00217
00218
00219 #ifdef __cplusplus
00220 }
00221 #endif
00222
00223 #endif