mirror of
https://github.com/id-Software/DOOM-IOS2.git
synced 2026-03-20 17:10:05 +01:00
Initial Commit
This commit is contained in:
264
common/embeddedaudiosynthesis/arm-hybrid-22k/host_src/eas_report.c
Executable file
264
common/embeddedaudiosynthesis/arm-hybrid-22k/host_src/eas_report.c
Executable file
@@ -0,0 +1,264 @@
|
||||
/*----------------------------------------------------------------------------
|
||||
*
|
||||
* File:
|
||||
* eas_report.c
|
||||
*
|
||||
* Contents and purpose:
|
||||
* This file contains the debug message handling routines for the EAS library.
|
||||
* These routines should be modified as needed for your system.
|
||||
*
|
||||
* Copyright 2005 Sonic Network Inc.
|
||||
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*
|
||||
*----------------------------------------------------------------------------
|
||||
* Revision Control:
|
||||
* $Revision: 659 $
|
||||
* $Date: 2007-04-24 13:36:35 -0700 (Tue, 24 Apr 2007) $
|
||||
*----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
#ifdef _lint
|
||||
#include "lint_stdlib.h"
|
||||
#else
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <stdarg.h>
|
||||
#endif
|
||||
|
||||
#include "eas_report.h"
|
||||
|
||||
static int severityLevel = 9999;
|
||||
|
||||
/* debug file */
|
||||
static FILE *debugFile = NULL;
|
||||
int flush = 0;
|
||||
|
||||
#ifndef _NO_DEBUG_PREPROCESSOR
|
||||
|
||||
/* structure should have an #include for each error message header file */
|
||||
S_DEBUG_MESSAGES debugMessages[] =
|
||||
{
|
||||
#ifndef UNIFIED_DEBUG_MESSAGES
|
||||
#include "eas_config_msgs.h"
|
||||
|
||||
|
||||
#include "eas_host_msgs.h"
|
||||
#include "eas_hostmm_msgs.h"
|
||||
#include "eas_math_msgs.h"
|
||||
#include "eas_midi_msgs.h"
|
||||
#include "eas_mixer_msgs.h"
|
||||
#include "eas_pcm_msgs.h"
|
||||
#include "eas_public_msgs.h"
|
||||
#include "eas_smf_msgs.h"
|
||||
#include "eas_wave_msgs.h"
|
||||
#include "eas_voicemgt_msgs.h"
|
||||
|
||||
#ifdef _FM_SYNTH
|
||||
#include "eas_fmsynth_msgs.h"
|
||||
#include "eas_fmengine_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _WT_SYNTH
|
||||
#include "eas_wtsynth_msgs.h"
|
||||
#include "eas_wtengine_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _ARM_TEST_MAIN
|
||||
#include "arm_main_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _EAS_MAIN
|
||||
#include "eas_main_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _EAS_MAIN_IPC
|
||||
#include "eas_main_ipc_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _METRICS_ENABLED
|
||||
#include "eas_perf_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _COMPRESSOR_ENABLED
|
||||
#include "eas_compressor_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _ENHANCER_ENABLED
|
||||
#include "eas_enhancer_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _WOW_ENABLED
|
||||
#include "eas_wow_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _SMAF_PARSER
|
||||
#include "eas_smaf_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _OTA_PARSER
|
||||
#include "eas_ota_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _IMELODY_PARSER
|
||||
#include "eas_imelody_msgs.h"
|
||||
#endif
|
||||
|
||||
#ifdef _WAVE_PARSER
|
||||
#include "eas_wavefile_msgs.h"
|
||||
#endif
|
||||
|
||||
#if defined(_CMX_PARSER) || defined(_MFI_PARSER)
|
||||
#include "eas_cmf_msgs.h"
|
||||
#endif
|
||||
|
||||
#if defined(_CMX_PARSER) || defined(_MFI_PARSER) || defined(_WAVE_PARSER)
|
||||
#include "eas_imaadpcm_msgs.h"
|
||||
#endif
|
||||
|
||||
#else
|
||||
#include "eas_debugmsgs.h"
|
||||
#endif
|
||||
|
||||
/* denotes end of error messages */
|
||||
{ 0,0,0 }
|
||||
};
|
||||
|
||||
/*----------------------------------------------------------------------------
|
||||
* EAS_ReportEx()
|
||||
*
|
||||
* This is the error message handler. The default handler outputs error
|
||||
* messages to stdout. Modify this as needed for your system.
|
||||
*----------------------------------------------------------------------------
|
||||
*/
|
||||
void EAS_ReportEx (int severity, unsigned long hashCode, int serialNum, ...)
|
||||
{
|
||||
va_list vargs;
|
||||
int i;
|
||||
|
||||
/* check severity level */
|
||||
if (severity > severityLevel)
|
||||
return;
|
||||
|
||||
/* find the error message and output to stdout */
|
||||
/*lint -e{661} we check for NULL pointer - no fence post error here */
|
||||
for (i = 0; debugMessages[i].m_pDebugMsg; i++)
|
||||
{
|
||||
if ((debugMessages[i].m_nHashCode == hashCode) &&
|
||||
(debugMessages[i].m_nSerialNum == serialNum))
|
||||
{
|
||||
/*lint -e{826} <allow variable args> */
|
||||
va_start(vargs, serialNum);
|
||||
if (debugFile)
|
||||
{
|
||||
vfprintf(debugFile, debugMessages[i].m_pDebugMsg, vargs);
|
||||
if (flush)
|
||||
fflush(debugFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
vprintf(debugMessages[i].m_pDebugMsg, vargs);
|
||||
}
|
||||
va_end(vargs);
|
||||
return;
|
||||
}
|
||||
}
|
||||
printf("Unrecognized error: Severity=%d; HashCode=%lu; SerialNum=%d\n", severity, hashCode, serialNum);
|
||||
} /* end EAS_ReportEx */
|
||||
|
||||
#else
|
||||
/*----------------------------------------------------------------------------
|
||||
* EAS_Report()
|
||||
*
|
||||
* This is the error message handler. The default handler outputs error
|
||||
* messages to stdout. Modify this as needed for your system.
|
||||
*----------------------------------------------------------------------------
|
||||
*/
|
||||
void EAS_Report (int severity, const char *fmt, ...)
|
||||
{
|
||||
va_list vargs;
|
||||
|
||||
/* check severity level */
|
||||
if (severity > severityLevel)
|
||||
return;
|
||||
|
||||
/*lint -e{826} <allow variable args> */
|
||||
va_start(vargs, fmt);
|
||||
if (debugFile)
|
||||
{
|
||||
vfprintf(debugFile, fmt, vargs);
|
||||
if (flush)
|
||||
fflush(debugFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
vprintf(fmt, vargs);
|
||||
}
|
||||
va_end(vargs);
|
||||
} /* end EAS_Report */
|
||||
|
||||
/*----------------------------------------------------------------------------
|
||||
* EAS_ReportX()
|
||||
*
|
||||
* This is the error message handler. The default handler outputs error
|
||||
* messages to stdout. Modify this as needed for your system.
|
||||
*----------------------------------------------------------------------------
|
||||
*/
|
||||
void EAS_ReportX (int severity, const char *fmt, ...)
|
||||
{
|
||||
va_list vargs;
|
||||
|
||||
/* check severity level */
|
||||
if (severity > severityLevel)
|
||||
return;
|
||||
|
||||
/*lint -e{826} <allow variable args> */
|
||||
va_start(vargs, fmt);
|
||||
if (debugFile)
|
||||
{
|
||||
vfprintf(debugFile, fmt, vargs);
|
||||
if (flush)
|
||||
fflush(debugFile);
|
||||
}
|
||||
else
|
||||
{
|
||||
vprintf(fmt, vargs);
|
||||
}
|
||||
va_end(vargs);
|
||||
} /* end EAS_ReportX */
|
||||
#endif
|
||||
|
||||
/*----------------------------------------------------------------------------
|
||||
* EAS_SetDebugLevel()
|
||||
*
|
||||
* Sets the level for debug message output
|
||||
*----------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
void EAS_SetDebugLevel (int severity)
|
||||
{
|
||||
severityLevel = severity;
|
||||
} /* end EAS_SetDebugLevel */
|
||||
|
||||
/*----------------------------------------------------------------------------
|
||||
* EAS_SetDebugFile()
|
||||
*
|
||||
* Redirect debugger output to the specified file.
|
||||
*----------------------------------------------------------------------------
|
||||
*/
|
||||
void EAS_SetDebugFile (void *file, int flushAfterWrite)
|
||||
{
|
||||
debugFile = (FILE*) file;
|
||||
flush = flushAfterWrite;
|
||||
} /* end EAS_SetDebugFile */
|
||||
|
||||
Reference in New Issue
Block a user