diff options
Diffstat (limited to 'Src/replicant/nsmp3dec/mp3sscdef.h')
-rw-r--r-- | Src/replicant/nsmp3dec/mp3sscdef.h | 154 |
1 files changed, 154 insertions, 0 deletions
diff --git a/Src/replicant/nsmp3dec/mp3sscdef.h b/Src/replicant/nsmp3dec/mp3sscdef.h new file mode 100644 index 00000000..04432a30 --- /dev/null +++ b/Src/replicant/nsmp3dec/mp3sscdef.h @@ -0,0 +1,154 @@ +/***************************************************************************\ + * +* MPEG Layer3-Audio Decoder +* © 1997-2006 by Fraunhofer IIS + * All Rights Reserved + * + * filename: mp3sscdef.h + * project : --- + * author : Martin Sieler + * date : 1998-02-16 + * contents/description: ssc definitions (Structured Status Code) + * + * +\***************************************************************************/ + +/* + * $Date: 2010/11/17 20:46:04 $ + * $Id: mp3sscdef.h,v 1.1 2010/11/17 20:46:04 audiodsp Exp $ + */ + +#ifndef __MP3SSCDEF_H__ +#define __MP3SSCDEF_H__ + +/*------------------------- includes --------------------------------------*/ + +/*-------------------------- defines --------------------------------------*/ + +/*-------------------------------------------------------------------------*\ + * + * Standard error/return values are 32 bit values layed out as follows: + * + * 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 + * 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 + * +---+-+-+-----------------------+-------------------------------+ + * |Sev|C|R| Handler | Code | + * +---+-+-+-----------------------+-------------------------------+ + * + * where + * + * Sev - is the severity code + * + * 00 - Success + * 01 - Informational + * 10 - Warning + * 11 - Error + * + * C - is the Customer code flag + * + * R - is a reserved bit + * + * Handler - is the handler code + * + * Code - is the facility's status code + * +\*-------------------------------------------------------------------------*/ + +/* + * define the Severity codes + */ + +#define SSC_SEV_SUCCESS 0x00000000L +#define SSC_SEV_INFO 0x40000000L +#define SSC_SEV_WARNING 0x80000000L +#define SSC_SEV_ERROR 0xc0000000L + +/* + * define masks to extract the fields + */ + +#define SSC_MASK_SEVERITY 0xc0000000L +#define SSC_MASK_HANDLER 0x0fff0000L +#define SSC_MASK_CODE 0x0000ffffL + +/* + * define MACROS to test an error/return code + */ + +#define SSC_GETSEV(x) ( (x) & SSC_MASK_SEVERITY ) + + +/* Check, if an SSC indicates success */ +#define SSC_SUCCESS(x) (((SSC_GETSEV(x)==SSC_SEV_SUCCESS)||(SSC_GETSEV(x)==SSC_SEV_INFO))?1:0) + +/* Check, if an SSC indicates an information */ +#define SSC_INFO(x) ((SSC_GETSEV(x)==SSC_SEV_INFO)?1:0) + +/* Check, if an SSC indicates a warning */ +#define SSC_WARNING(x) ((SSC_GETSEV(x)==SSC_SEV_WARNING)?1:0) + +/* Check, if an SSC indicates an error */ +#define SSC_ERROR(x) ((SSC_GETSEV(x)==SSC_SEV_ERROR)?1:0) + +/*-------------------------------------------------------------------------*\ + * + * SSC classes (handler) + * +\*-------------------------------------------------------------------------*/ + +#define SSC_HANDLER_GEN 0x00000000L + +#define SSC_I_GEN (SSC_SEV_INFO | SSC_HANDLER_GEN) +#define SSC_W_GEN (SSC_SEV_WARNING | SSC_HANDLER_GEN) +#define SSC_E_GEN (SSC_SEV_ERROR | SSC_HANDLER_GEN) + +/*-------------------------------------------------------------------------*/ + +#define SSC_HANDLER_IO 0x00010000L + +#define SSC_I_IO (SSC_SEV_INFO | SSC_HANDLER_IO) +#define SSC_W_IO (SSC_SEV_WARNING | SSC_HANDLER_IO) +#define SSC_E_IO (SSC_SEV_ERROR | SSC_HANDLER_IO) + +/*-------------------------------------------------------------------------*/ + +#define SSC_HANDLER_MPGA 0x01010000L + +#define SSC_I_MPGA (SSC_SEV_INFO | SSC_HANDLER_MPGA) +#define SSC_W_MPGA (SSC_SEV_WARNING | SSC_HANDLER_MPGA) +#define SSC_E_MPGA (SSC_SEV_ERROR | SSC_HANDLER_MPGA) + +/*-------------------------------------------------------------------------*\ + * + * SSC codes + * +\*-------------------------------------------------------------------------*/ + +typedef enum + { + SSC_OK = 0x00000000L, + + SSC_E_WRONGPARAMETER = (SSC_E_GEN | 1), + SSC_E_OUTOFMEMORY = (SSC_E_GEN | 2), + SSC_E_INVALIDHANDLE = (SSC_E_GEN | 3), + + SSC_E_IO_GENERIC = (SSC_W_IO | 1), + SSC_E_IO_OPENFAILED = (SSC_W_IO | 2), + SSC_E_IO_CLOSEFAILED = (SSC_W_IO | 3), + SSC_E_IO_READFAILED = (SSC_W_IO | 4), + + SSC_I_MPGA_CRCERROR = (SSC_I_MPGA | 1), + SSC_I_MPGA_NOMAINDATA = (SSC_I_MPGA | 2), + + SSC_E_MPGA_GENERIC = (SSC_E_MPGA | 1), + SSC_E_MPGA_WRONGLAYER = (SSC_E_MPGA | 2), + SSC_E_MPGA_BUFFERTOOSMALL = (SSC_E_MPGA | 3), + + SSC_W_MPGA_SYNCSEARCHED = (SSC_W_MPGA | 1), + SSC_W_MPGA_SYNCLOST = (SSC_W_MPGA | 2), + SSC_W_MPGA_SYNCNEEDDATA = (SSC_W_MPGA | 3), + SSC_W_MPGA_SYNCEOF = (SSC_W_MPGA | 4) + } SSC; + +/*-------------------------------------------------------------------------*/ +#endif |