Woopsi 1.0
GUI Framework for Nintendo DS Homebrew

debug.h

00001 #ifndef _DEBUG_H_
00002 #define _DEBUG_H_
00003 
00004 #include <stdio.h>
00005 #include <string.h>
00006 #include <stdarg.h>
00007 #include <nds.h>
00008 #include "gadgetstyle.h"
00009 #include "woopsistring.h"
00010 
00011 #define DEBUG_ACTIVE true
00012 
00013 namespace WoopsiUI {
00014 
00015         class AmigaScreen;
00016         class AmigaWindow;
00017         class Gadget;
00018         class Woopsi;
00019         class ScrollingTextBox;
00020 
00029         class Debug {
00030 
00031         public:
00035                 static void busyWait();
00036 
00043                 static void printf(const char* format, ...);
00044 
00067                 static void wvsnprintf(size_t maxCount, const char* format, va_list args);
00068 
00072                 static void flipToTopScreen();
00073 
00077                 static void flipToBottomScreen();
00078 
00082                 static void flipScreens();
00083 
00088                 static void raiseToTop();
00089 
00094                 static void lowerToBottom();
00095 
00096         private:
00097                 static Debug* _debug;                                   
00098                 AmigaScreen* _screen;                                   
00099                 AmigaWindow* _window;                                   
00100                 ScrollingTextBox* _textBox;                             
00101                 GadgetStyle* _style;                                    
00106                 Debug();
00107 
00111                 ~Debug();
00112 
00117                 static void createDebug();
00118 
00122                 void createGUI();
00123 
00128                 void output(const char* msg);
00129         };
00130 }
00131 
00132 #endif