📄 toolsreport.cpp
字号:
#include "ToolsReport.h"
#include <stdlib.h>
#include <stdio.h>
/*
This "SOFTWARE" is a free software.
You are allowed to download, use, modify and redistribute this software.
The software is provided "AS IS" without warranty of any kind.
Copyright: University of Koblenz-Landau, Dirk Balthasar
*/
#ifdef _WIN32
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#endif
#ifndef WIN32
#define _vsnprintf vsnprintf
#endif
tools::CMessageHandler* tools::CMessageHandler::m_MsgHandler = 0;
void tools::LogMessage(const char *Msg)
{
CMessageHandler *handler = CMessageHandler::Get();
if (handler)
{
handler->LogMessage(Msg);
}
}
void tools::LogMessageFmt(const char *fmt, ...)
{
int BufferSize = 255; // initial buffersize
va_list ap;
va_start(ap, fmt);
char *buffer = (char*)malloc(BufferSize);
// vsnprintf Win32: rvalue -1: exeeds buffer
// vsnprintf Win32: rvalue -1: exeeds buffer
while ( (_vsnprintf(buffer, BufferSize, fmt, ap) < 0) || // win32 (fuck!)
(_vsnprintf(buffer, BufferSize, fmt, ap) > BufferSize)) // unix (fuck!)
{// buffer was to small. Enlarge buffer.
BufferSize += 1000;
buffer = (char*)realloc(buffer,BufferSize);
}
CMessageHandler *handler = CMessageHandler::Get();
if (handler)
{
handler->LogMessage(buffer);
}
free(buffer);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -