aboutsummaryrefslogtreecommitdiff
path: root/Src/replicant/nsmp3dec/mp3sscdef.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/replicant/nsmp3dec/mp3sscdef.h')
-rw-r--r--Src/replicant/nsmp3dec/mp3sscdef.h154
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