本文整理汇总了C++中LogFile::Logf方法的典型用法代码示例。如果您正苦于以下问题:C++ LogFile::Logf方法的具体用法?C++ LogFile::Logf怎么用?C++ LogFile::Logf使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LogFile
的用法示例。
在下文中一共展示了LogFile::Logf方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: InitOpenGL
bool Application::InitOpenGL()
{
#ifdef WIN32
wglSwapIntervalEXT_Func wglSwapIntervalEXT = (wglSwapIntervalEXT_Func)wglGetProcAddress("wglSwapIntervalEXT");
if(wglSwapIntervalEXT) wglSwapIntervalEXT(Globals.VP.Vsync);//1 - чтобы включить
else FASSERT (wglSwapIntervalEXT);
#else
#error Linux is not supported yet
#endif
LF.Logf("InitOpenGL","Vsync status : %d",Globals.VP.Vsync);
//===[ Инициализация всякой фигни ]===================================================||
Cam.Init();
//===[ Наинициализировались ]=========================================================||
glClearColor(0.0f, 0.0f, 0.25f, 0.0f);
// Очистка экрана в черный цвет
glClearDepth(1.0); // Разрешить очистку буфера глубины
glDepthFunc(GL_LESS); // Тип теста глубины (рисуется всё что ближе)
glEnable(GL_DEPTH_TEST);// разрешить тест глубины
glShadeModel(GL_SMOOTH);// разрешить плавное цветовое сглаживание
ReshapeWindow(Globals.VP.Width,Globals.VP.Height);
glEnable(GL_TEXTURE_2D); // Разрешение наложения текстур
glClearDepth(1.0f); // Установка буфера глубины
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST); // Улучшенные вычисления перспективы
glDisable(GL_POLYGON_SMOOTH);
glHint(GL_POLYGON_SMOOTH_HINT,GL_NICEST);
glHint(GL_POINT_SMOOTH_HINT,GL_NICEST);
glEnable(GL_DITHER);
//glEnable(GL_CULL_FACE);
//==== Свет ==========================================================================//
glEnable(GL_LIGHT1); // Разрешение источника света номер один
glLightfv(GL_LIGHT1, GL_AMBIENT, LightAmbient); // Установка Фонового Света
glLightfv(GL_LIGHT1, GL_DIFFUSE, LightDiffuse); // Установка Диффузного Света
glLightfv(GL_LIGHT1, GL_POSITION, LightPosition); // Позиция света
glEnable(GL_LIGHTING);
glLightModelf(GL_LIGHT_MODEL_TWO_SIDE,0.0);
glLightModelf(GL_LIGHT_MODEL_LOCAL_VIEWER,GL_TRUE);
//=== /Свет ==========================================================================//
return NO_ERROR;
}
示例2: GetSysInfo
bool Application::GetSysInfo()
{
// ===[ Видео акселератор ]===================================================================================
glGetIntegerv(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT,&SysInfo.video.MaxAnisotropy);
SysInfo.video.RendererName = (char *)glGetString(GL_RENDERER); // Выводим имя карты
LF.Logf("GetSysInfo","Render %s",SysInfo.video.RendererName);
SysInfo.video.VendorName = (char *)glGetString(GL_VENDOR); // Выводим имя поставщика
LF.Logf("GetSysInfo","Vendor %s",SysInfo.video.VendorName);
SysInfo.video.OpenGL_Version= (char *)glGetString(GL_VERSION); // Выводим версию
LF.Logf("GetSysInfo","OpenGL version is %s",SysInfo.video.OpenGL_Version);
SysInfo.video.SupportedGlExtentions = (char *)glGetString(GL_EXTENSIONS);
//LF.Msg("Найденые расширения видеокарты"); LF.Msg(SysInfo.video.SupportedGlExtentions);
// ===[ Процессор::реестр ]=======================================================================================
#ifdef WIN32
HKEY CPinfo;
FASSERT(!RegOpenKeyEx(HKEY_LOCAL_MACHINE,"HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0",NULL,KEY_QUERY_VALUE,&CPinfo));
DWORD bufsize = sizeof(SysInfo.cpu.speed);
RegQueryValueEx(CPinfo,"~MHz",NULL,NULL,(LPBYTE)&SysInfo.cpu.speed,&bufsize);
LF.Logf("GetSysInfo","CPU speed is %d (by M$ Windows)",SysInfo.cpu.speed);
bufsize = sizeof(SysInfo.cpu.id);
RegQueryValueEx(CPinfo,"Identifier",NULL,NULL,(LPBYTE)&SysInfo.cpu.id,&bufsize);
LF.Logf("GetSysInfo","CPU identifier \"%s\"",SysInfo.cpu.id);
bufsize = sizeof(SysInfo.cpu.name);
RegQueryValueEx(CPinfo,"ProcessorNameString",NULL,NULL,(LPBYTE)&SysInfo.cpu.name,&bufsize);
LF.Logf("GetSysInfo","CPU name \"%s\" ",SysInfo.cpu.name);
bufsize = sizeof(SysInfo.cpu.vendor_id);
RegQueryValueEx(CPinfo,"VendorIdentifier",NULL,NULL,(LPBYTE)&SysInfo.cpu.vendor_id,&bufsize);
LF.Logf("GetSysInfo","Vendor ID \"%s\"",SysInfo.cpu.vendor_id);
RegCloseKey(CPinfo);
// Расширения процессора
char fichi[128];
sprintf(fichi,"Supported extentions: ");
SysInfo.cpu.MMX = (char)IsProcessorFeaturePresent (PF_MMX_INSTRUCTIONS_AVAILABLE) ;
if (SysInfo.cpu.MMX) strcat(fichi," MMX");
SysInfo.cpu.AMD_3DNow = (char)IsProcessorFeaturePresent (PF_3DNOW_INSTRUCTIONS_AVAILABLE) ;
if (SysInfo.cpu.AMD_3DNow) strcat(fichi," AMD_3DNow");
SysInfo.cpu.RDTSC = (char)IsProcessorFeaturePresent (PF_RDTSC_INSTRUCTION_AVAILABLE) ;
if (SysInfo.cpu.RDTSC) strcat(fichi," RDTSC");
SysInfo.cpu.SSE = (char)IsProcessorFeaturePresent (PF_XMMI_INSTRUCTIONS_AVAILABLE) ;
if (SysInfo.cpu.SSE) strcat(fichi," SSE");
SysInfo.cpu.SSE2 = (char)IsProcessorFeaturePresent (PF_XMMI64_INSTRUCTIONS_AVAILABLE);
if (SysInfo.cpu.SSE2) strcat(fichi," SSE2");
LF.Logf("GetSysInfo","%s",fichi);
#else
// ===[ Процессор::ассемблер ]====================================================================================
unsigned __int64 ticks;
ticks = GetCycleCount();
Sleep (TIME_TO_CALCULATE_CPU_SPEED);
ticks = GetCycleCount() - ticks;
SysInfo.cpu.speed = int ((float)ticks /(TIME_TO_CALCULATE_CPU_SPEED * 1000.0f));
LF.Logf("GetSysInfo","CPU speed is %d (by ASM)",SysInfo.cpu.speed);
union CPUID_string_union_type{
char name [16];
struct{
DWORD a,b,c,zero;
};
} CPU_name;
DWORD a,b,c; // Временные переменные для доставания имени процессора
memset (&CPU_name,0,sizeof(CPU_name));
DWORD CPU_features, // Возможности процессора 32 бита
CPU_data_1, // Данные о прецессоре первые 32 бита
CPU_data_2; // Данные о прецессоре вторые 32 бита
__asm {
mov EAX, 00000000h // Имя вендора процессора
CPUID
mov a,EBX
mov b,EDX
mov c,ECX
mov EAX, 00000001h
CPUID
mov CPU_features, EDX
mov CPU_data_1, EBX
mov CPU_data_2, ECX
}; CPU_name.a = a; CPU_name.b = b; CPU_name.c = c;
LF.Logf("GetSysInfo","CPU_name %s",CPU_name.name);
#define SOPROCESSOR_ENABLED 0x1 // 00000000000000000000000000000001
#define RDTSC_ENABLED 0x8 // 00000000000000000000000000001000
#define MMX_ENABLED 0x400000 // 00000000010000000000000000000000
#define SSE_ENABLED 0x800000 // 00000000100000000000000000000000
#define SSE2_ENABLED 0x1000000 // 00000001000000000000000000000000
#define AMD_3D_NOW_ENABLED 0x40000000 // 01000000000000000000000000000000
#define AMD_3D_NOW_Ex_ENABLED 0x80000000 // 10000000000000000000000000000000
#pragma warning (disable:4127)
if (CPU_features & RDTSC_ENABLED) SysInfo.cpu.RDTSC = true;
if (CPU_features & MMX_ENABLED) SysInfo.cpu.MMX = true;
if (CPU_features & SSE_ENABLED) SysInfo.cpu.SSE = true;
if (CPU_features & SSE2_ENABLED) SysInfo.cpu.SSE2 = true;
if (CPU_features & AMD_3D_NOW_ENABLED) SysInfo.cpu.AMD_3DNow = true;
if (CPU_features & AMD_3D_NOW_Ex_ENABLED) SysInfo.cpu.AMD_3DNow_Ex= true;
#pragma warning (default:4127)
char fichi[128];
sprintf(fichi,"Supported extentions: ");
if (SysInfo.cpu.SSE) strcat(fichi," SSE");
if (SysInfo.cpu.SSE2) strcat(fichi," SSE2");
if (SysInfo.cpu.MMX) strcat(fichi," MMX");
if (SysInfo.cpu.AMD_3DNow) strcat(fichi," AMD_3DNow");
if (SysInfo.cpu.AMD_3DNow_Ex) strcat(fichi," AMD_3DNow_Ex");
if (SysInfo.cpu.RDTSC) strcat(fichi," RDTSC");
//.........这里部分代码省略.........
示例3: Birth
//.........这里部分代码省略.........
MY_WINDOW_NAME,
dwStyle | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
WindowRect.left,
WindowRect.top,
WindowRect.right - WindowRect.left,
WindowRect.bottom - WindowRect.top,
NULL,
NULL,
GetModuleHandle(0),
NULL
);
FASSERT(Application::Vars.win.MHWnd);
ShowWindow(Application::Vars.win.MHWnd, SW_SHOW);
SetForegroundWindow(Application::Vars.win.MHWnd);
SetFocus(Application::Vars.win.MHWnd);
// Получаем контекст устройства
Application::Vars.win.DC = GetDC(Application::Vars.win.MHWnd);
FASSERT(Application::Vars.win.DC);
// Установка формата пикселей
PIXELFORMATDESCRIPTOR mainPFD;
memset(&mainPFD,0,sizeof(PIXELFORMATDESCRIPTOR));
mainPFD.nSize = sizeof(PIXELFORMATDESCRIPTOR);
mainPFD.nVersion = 1;
mainPFD.iPixelType = PFD_TYPE_RGBA;
mainPFD.dwFlags = PFD_DRAW_TO_WINDOW |PFD_DOUBLEBUFFER |PFD_SUPPORT_OPENGL;
mainPFD.iLayerType = PFD_MAIN_PLANE;
mainPFD.cDepthBits = 16;
int PF;
PF = ChoosePixelFormat(Application::Vars.win.DC,&mainPFD);
FASSERT(PF); // Выбрали!
FASSERT(SetPixelFormat(Application::Vars.win.DC,PF,&mainPFD)); // Поставили!
// Создание контекста рендера
Application::Vars.win.RC = wglCreateContext (Application::Vars.win.DC);
FASSERT(Application::Vars.win.RC);
// Установка полученого контекста главным
FASSERT(wglMakeCurrent (Application::Vars.win.DC, Application::Vars.win.RC));
#else
dpy = XOpenDisplay(0); // Открываем дисплей по-умолчанию (может быть сетевой)
vi = glXChooseVisual( dpy, // Получаем подходящий визуал
DefaultScreen(dpy),
attributeList);
cx = glXCreateContext(dpy, vi, 0, GL_TRUE); // Создание контекста
// create a color map
cmap = XCreateColormap(dpy, RootWindow(dpy, vi->screen),
vi->visual, AllocNone);
// Создаём окно
swa.colormap = cmap;
swa.border_pixel = 0;
swa.event_mask = StructureNotifyMask;
win = XCreateWindow(dpy, RootWindow(dpy, vi->screen), 0, 0, 100, 100,
0, vi->depth, InputOutput, vi->visual,
CWBorderPixel|CWColormap|CWEventMask, &swa);
XMapWindow(dpy, win);
XIfEvent(dpy, &event, WaitForNotify, (char*)win);
glXMakeCurrent(dpy, win, cx); // Привязка контекста к окну
#endif
GetSysInfo();
#ifndef _DEBUG
if (AVIp.Open("data/VIDEO/logo.avi") == FJC_NO_ERROR)
{
AVIp.Caching();
GT.Start();
ShowMovie(true);
AVIp.CloseAVI();
}
else
{
LF.Logf("Birth","Невозможно загрузить и проиграть заставку");
}
#endif
// Инициализация библиотек и глобальных объектов
InitOpenGL(); // Графика - OpenGL
LF.Log("BIRTH","Init OpenGL complete");
InitOpenIL(); // Поддержка изображений - OpenIL(DevIL)
LF.Log("BIRTH","Init OpenIL complete");
// инициализация менеджера ресурсов
rm.INIT("Consolas.LFont","default.png","cube.lwo");
CCons.SetFont(rm.SELECT_Font("Console"));
SimpleLogo.init(&SwapBuffersEXT,IL_PNG,"data/textures/Logos/NewLOGO.PNG");
SimpleLogo.render_logo(FJC_STARTUP_LOGO_MODE_BEGIN);
rm.SELECT_Font("Courier")->SetColor(1,0,0);
SimpleLogo.render_logo( FJC_STARTUP_LOGO_MODE_PROCEED_WITH_TEXT,1,
TextBlock(rm.SELECT_Font("Consolas"),"Now loading, please wait",250.0f,300.0f));
Sound.Init();
TestBuf.Init();
TestBuf.LoadWav("data/sounds/KDE_Startup_new2.wav");
TestSource.Init();
TestSource.LinkWithBufer(&TestBuf);
LF.Log("BIRTH","Init OpenAL complete");
InitMATH(); // Математическая библиотека
LF.Log("BIRTH","InitMATH");
LF.Msg("Init complete");
LoadResources();
PS.INIT();
return NO_ERROR;
};