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_ENUMS_H__ 00003 #define __BSE_ENUMS_H__ 00004 00005 #include <bse/bsetype.hh> 00006 #include <bse/gsldefs.hh> 00007 00008 00009 G_BEGIN_DECLS 00010 00011 00012 /* --- enum definitions --- */ 00013 typedef enum 00014 { 00015 BSE_IIR_FILTER_BUTTERWORTH = 1, 00016 BSE_IIR_FILTER_CHEBYCHEFF1, 00017 BSE_IIR_FILTER_CHEBYCHEFF2 00018 } BseIIRFilterAlgorithm; 00019 typedef enum 00020 { 00021 BSE_IIR_FILTER_LOW_PASS = 1, 00022 BSE_IIR_FILTER_HIGH_PASS, 00023 BSE_IIR_FILTER_BAND_PASS, 00024 BSE_IIR_FILTER_BAND_STOP 00025 } BseIIRFilterType; 00026 typedef enum 00027 { 00028 BSE_REGISTER_PLUGIN = 1, 00029 BSE_REGISTER_SCRIPT = 2, 00030 BSE_REGISTER_DONE = 256 00031 } BseRegistrationType; 00032 typedef enum 00033 { 00034 BSE_INTERPOL_NONE, /*< nick=None >*/ 00035 BSE_INTERPOL_LINEAR, /*< nick=Linear >*/ 00036 BSE_INTERPOL_CUBIC /*< nick=Cubic >*/ 00037 } BseInterpolType; 00038 typedef enum 00039 { 00040 BSE_LOOP_NONE, 00041 BSE_LOOP_PATTERN, 00042 BSE_LOOP_PATTERN_ROWS, 00043 BSE_LOOP_SONG, 00044 BSE_LOOP_LAST /*< skip >*/ 00045 } BseLoopType; 00046 typedef enum 00047 { 00048 BSE_MAGIC_BSE_BIN_EXTENSION = 1 << 0, 00049 BSE_MAGIC_BSE_SONG = 1 << 2 00050 } BseMagicFlags; 00051 typedef enum 00052 { 00053 BSE_ERROR_NONE = 0, 00054 BSE_ERROR_INTERNAL, 00055 BSE_ERROR_UNKNOWN, 00056 /* general errors */ 00057 BSE_ERROR_IO, 00058 BSE_ERROR_PERMS, 00059 /* file errors */ 00060 BSE_ERROR_FILE_BUSY, 00061 BSE_ERROR_FILE_EXISTS, 00062 BSE_ERROR_FILE_EOF, 00063 BSE_ERROR_FILE_EMPTY, 00064 BSE_ERROR_FILE_NOT_FOUND, 00065 BSE_ERROR_FILE_IS_DIR, 00066 BSE_ERROR_FILE_OPEN_FAILED, 00067 BSE_ERROR_FILE_SEEK_FAILED, 00068 BSE_ERROR_FILE_READ_FAILED, 00069 BSE_ERROR_FILE_WRITE_FAILED, 00070 /* out of resource conditions */ 00071 BSE_ERROR_MANY_FILES, 00072 BSE_ERROR_NO_FILES, 00073 BSE_ERROR_NO_SPACE, 00074 BSE_ERROR_NO_MEMORY, 00075 /* content errors */ 00076 BSE_ERROR_NO_HEADER, 00077 BSE_ERROR_NO_SEEK_INFO, 00078 BSE_ERROR_NO_DATA, 00079 BSE_ERROR_DATA_CORRUPT, 00080 BSE_ERROR_WRONG_N_CHANNELS, 00081 BSE_ERROR_FORMAT_INVALID, 00082 BSE_ERROR_FORMAT_UNKNOWN, 00083 BSE_ERROR_DATA_UNMATCHED, 00084 /* miscellaneous errors */ 00085 BSE_ERROR_TEMP, 00086 BSE_ERROR_WAVE_NOT_FOUND, 00087 BSE_ERROR_CODEC_FAILURE, 00088 BSE_ERROR_UNIMPLEMENTED, 00089 BSE_ERROR_INVALID_PROPERTY, 00090 BSE_ERROR_INVALID_MIDI_CONTROL, 00091 BSE_ERROR_PARSE_ERROR, 00092 BSE_ERROR_SPAWN, 00093 /* Device errors */ 00094 BSE_ERROR_DEVICE_NOT_AVAILABLE, 00095 BSE_ERROR_DEVICE_ASYNC, 00096 BSE_ERROR_DEVICE_BUSY, 00097 BSE_ERROR_DEVICE_FORMAT, 00098 BSE_ERROR_DEVICE_BUFFER, 00099 BSE_ERROR_DEVICE_LATENCY, 00100 BSE_ERROR_DEVICE_CHANNELS, 00101 BSE_ERROR_DEVICE_FREQUENCY, 00102 BSE_ERROR_DEVICES_MISMATCH, 00103 /* BseSource errors */ 00104 BSE_ERROR_SOURCE_NO_SUCH_MODULE, 00105 BSE_ERROR_SOURCE_NO_SUCH_ICHANNEL, 00106 BSE_ERROR_SOURCE_NO_SUCH_OCHANNEL, 00107 BSE_ERROR_SOURCE_NO_SUCH_CONNECTION, 00108 BSE_ERROR_SOURCE_PRIVATE_ICHANNEL, 00109 BSE_ERROR_SOURCE_ICHANNEL_IN_USE, 00110 BSE_ERROR_SOURCE_CHANNELS_CONNECTED, 00111 BSE_ERROR_SOURCE_CONNECTION_INVALID, 00112 BSE_ERROR_SOURCE_PARENT_MISMATCH, 00113 BSE_ERROR_SOURCE_BAD_LOOPBACK, 00114 BSE_ERROR_SOURCE_BUSY, 00115 BSE_ERROR_SOURCE_TYPE_INVALID, 00116 /* BseProcedure errors */ 00117 BSE_ERROR_PROC_NOT_FOUND, 00118 BSE_ERROR_PROC_BUSY, 00119 BSE_ERROR_PROC_PARAM_INVAL, 00120 BSE_ERROR_PROC_EXECUTION, 00121 BSE_ERROR_PROC_ABORT, 00122 /* various procedure errors */ 00123 BSE_ERROR_NO_ENTRY, 00124 BSE_ERROR_NO_EVENT, 00125 BSE_ERROR_NO_TARGET, 00126 BSE_ERROR_NOT_OWNER, 00127 BSE_ERROR_INVALID_OFFSET, 00128 BSE_ERROR_INVALID_DURATION, 00129 BSE_ERROR_INVALID_OVERLAP, 00130 } BseErrorType; 00131 00132 00133 /* --- convenience functions --- */ 00134 const gchar* bse_error_name (BseErrorType error_value); 00135 const gchar* bse_error_nick (BseErrorType error_value); 00136 const gchar* bse_error_blurb (BseErrorType error_value); 00137 BseErrorType bse_error_from_errno (gint v_errno, 00138 BseErrorType fallback); 00139 00140 #define bse_assert_ok(error) G_STMT_START{ \ 00141 if G_UNLIKELY (error) \ 00142 { \ 00143 g_log (G_LOG_DOMAIN, G_LOG_LEVEL_ERROR, \ 00144 "%s:%d: unexpected error: %s", \ 00145 __FILE__, __LINE__, bse_error_blurb (error)); \ 00146 } \ 00147 }G_STMT_END 00148 00149 G_END_DECLS 00150 00151 00152 #endif /* __BSE_ENUMS_H__ */