/*
 *  DebugMessage.h
 *  iphone-gl-app
 *
 *  Created by John Ryland on 16/06/09.
 *  Copyright 2009 InvertedLogic. All rights reserved.
 *
 */

#ifndef DEBUG_MESSAGE_H
#define DEBUG_MESSAGE_H


class DebugMessage
{
public:
	// Programmer debug messages, disabled in release builds
	static void debug(const char *string, ...);
	static void warning(const char *string, ...);
	// For programmer error messages, not disabled in release builds
	// Fatal means an unrecoverable condition and will exit the program
	static void error(const char *string, ...);
	static void fatal(const char *string, ...);
	// User interface messages, not disabled in release builds
	//static void messageBox(const char *title, const char *string, ...);
};


#ifndef DEBUG_MESSAGE_DISABLE
#  define dbg(args...)			DebugMessage::debug(## args)
#  define warn(args...)			DebugMessage::warning(## args)
#else
#  define dbg(args...)			((void)0)
#  define warn(args...)			((void)0)
#endif // DEBUG_MEMORY_DISABLE


#endif // DEBUG_MESSAGE_H
