#ifndef _IOAUDIODEBUG_H
#define _IOAUDIODEBUG_H
#include <IOKit/IOTypes.h>
#include <sys/kdebug.h>
#ifdef DEBUG
#define DEBUG_LEVEL 3 #define DEBUG_USE_FIREWIRE_KPRINTF 1
#ifdef DEBUG_USE_FIRELOG
#include <IOKit/firewire/FireLog.h>
#define audioDebugIOLog( level, message... ) \
do {FireLog( message ); FireLog("\n");} while (0)
#endif
#ifdef DEBUG_USE_IOUSBLOG
#include <IOKit/usb/IOUSBLog.h>
#define audioDebugIOLog( level, message... ) \
do {USBLog( level, message );} while (0)
#endif
#ifdef DEBUG_USE_FIREWIRE_KPRINTF
#define audioDebugIOLog( level, message... ) \
do { if (level <= DEBUG_LEVEL) kprintf( message );} while (0)
#endif
#ifdef assert
#undef assert
#define AssertionMessage( cond, file, line ) \
"assert \"" #cond "\" failed in " #file " at line " #line
#define AssertionFailed( cond, file, line ) \
panic(AssertionMessage( cond, file, line ));
#define assert( cond ) \
if( !(cond) ) { \
AssertionFailed( cond, __FILE__, __LINE__ ) \
}
#endif
#else
#define audioDebugIOLog( level, message... ) ;
#endif
#endif