Handling of printing debug messages. More...
#include "stdafx.h"
#include <stdarg.h>
#include "console_func.h"
#include "debug.h"
#include "string_func.h"
#include "fileio_func.h"
#include "settings_type.h"
#include <time.h>
#include "network/network_admin.h"
Go to the source code of this file.
Data Structures | |
struct | DebugLevel |
Defines | |
#define | DEBUG_LEVEL(x) { #x, &_debug_##x##_level } |
Functions | |
static void | debug_print (const char *dbg, const char *buf) |
Internal function for outputting the debug line. | |
void CDECL | debug (const char *dbg, const char *format,...) |
Output a debug line. | |
void | SetDebugString (const char *s) |
Set debugging levels by parsing the text in s. | |
const char * | GetDebugString () |
Print out the current debug-level. | |
const char * | GetLogPrefix () |
Get the prefix for logs; if show_date_in_logs is enabled it returns the date, otherwise it returns nothing. | |
Variables | |
SOCKET | _debug_socket = INVALID_SOCKET |
int | _debug_ai_level |
int | _debug_driver_level |
int | _debug_grf_level |
int | _debug_map_level |
int | _debug_misc_level |
int | _debug_net_level |
int | _debug_sprite_level |
int | _debug_oldloader_level |
int | _debug_npf_level |
int | _debug_yapf_level |
int | _debug_freetype_level |
int | _debug_sl_level |
int | _debug_gamelog_level |
int | _debug_desync_level |
int | _debug_console_level |
uint32 | _realtime_tick = 0 |
The real time in the game. | |
static const DebugLevel | debug_level [] |
Handling of printing debug messages.
Definition in file debug.cpp.
void CDECL debug | ( | const char * | dbg, | |
const char * | format, | |||
... | ||||
) |
Output a debug line.
dbg | Debug category. | |
format | Text string a la printf, with optional arguments. |
Definition at line 116 of file debug.cpp.
References debug_print(), and lengthof.
static void debug_print | ( | const char * | dbg, | |
const char * | buf | |||
) | [static] |
Internal function for outputting the debug line.
dbg | Debug category. | |
buf | Text line to output. |
Definition at line 77 of file debug.cpp.
References AUTOSAVE_DIR, FioFOpenFile(), GetLogPrefix(), IConsoleDebug(), lengthof, and NetworkAdminConsole().
Referenced by debug().
const char* GetDebugString | ( | ) |
const char* GetLogPrefix | ( | ) |
Get the prefix for logs; if show_date_in_logs is enabled it returns the date, otherwise it returns nothing.
Definition at line 212 of file debug.cpp.
References _settings_client, ClientSettings::gui, and GUISettings::show_date_in_logs.
Referenced by debug_print(), and IConsolePrint().
void SetDebugString | ( | const char * | s | ) |
Set debugging levels by parsing the text in s.
For setting individual levels a string like "net=3,grf=6"
should be used. If the string starts with a number, the number is used as global debugging level.
s | Text describing the wanted debugging levels. |
Definition at line 135 of file debug.cpp.
References endof, and ShowInfoF().
uint32 _realtime_tick = 0 |
The real time in the game.
Definition at line 43 of file debug.cpp.
Referenced by ClientNetworkGameSocketHandler::CheckConnection(), ClientNetworkContentSocketHandler::Connect(), DrawDirtyBlocks(), HandleMouseEvents(), NetworkGameSocketHandler::HandlePacket(), VideoDriver_Win32::MainLoop(), VideoDriver_SDL::MainLoop(), VideoDriver_Dedicated::MainLoop(), NetworkAddChatMessage(), NetworkChatMessageLoop(), NetworkGameSocketHandler::NetworkGameSocketHandler(), NetworkServer_Tick(), ClientNetworkGameSocketHandler::Receive_SERVER_MAP_DONE(), ServerNetworkAdminSocketHandler::Send(), ClientNetworkContentSocketHandler::SendReceive(), and ServerNetworkAdminSocketHandler::ServerNetworkAdminSocketHandler().
const DebugLevel debug_level[] [static] |
{ DEBUG_LEVEL(ai), DEBUG_LEVEL(driver), DEBUG_LEVEL(grf), DEBUG_LEVEL(map), DEBUG_LEVEL(misc), DEBUG_LEVEL(net), DEBUG_LEVEL(sprite), DEBUG_LEVEL(oldloader), DEBUG_LEVEL(npf), DEBUG_LEVEL(yapf), DEBUG_LEVEL(freetype), DEBUG_LEVEL(sl), DEBUG_LEVEL(gamelog), DEBUG_LEVEL(desync), DEBUG_LEVEL(console), }