Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
#ifndef _CLOGFILE #define _CLOGFILE #include <stdio.h> #include <windows.h> #include <iostream> #include "Singletons.hpp" using namespace std; #define MAX_BUFFER 1024 #define L_FAIL false #define L_OK true #define g_pLogfile CLogfile::get() enum FONTCOLORS { BLACK,RED,GREEN,BLUE,PURPLE }; class CLogfile : public TSingleton<CLogfile> { public: CLogfile (); ~CLogfile (); void CreateLogfile (const char *); void WriteTopic (const char *,int); void Textout (const char*); void Textout (int,const char*); void Textout (int,bool,const char*); void fTextout (const char*,...); void fTextout (int,const char*,...); void fTextout (int,bool, const char*,...); void FunctionResult (const char*,bool); private: FILE *m_Logfile; }; #endif |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 |
#include "Logfile.hpp" using namespace std; CLogfile::CLogfile() { } CLogfile::~CLogfile() { Textout("<br><br>End of Logfile</font></body></html>"); fclose(m_Logfile); } void CLogfile::CreateLogfile(const char* LogName) { m_Logfile=fopen(LogName,"w"); Textout("<html><head><title>Logfile</title></head>"); Textout("<body><font face='courier new'>"); WriteTopic("Logfile",3); #ifdef _DEBUG Textout("BUILD:DEBUG<br>"); #else Textout("BUILD:RELEASE<br>"); #endif fclose(m_Logfile); m_Logfile = fopen(LogName,"a"); } void CLogfile::WriteTopic(const char* Topic,int Size) { Textout("<table cellspacing ='0' cellpadding='0' width='100%%'"); Textout("bgcolor='DFDFE5'>\n<tr>\n<td>\n<font face='arial'"); fTextout("size='+%i'>\n",Size); Textout(Topic); Textout("</font>\n</td>\n</tr>\n</table>\n<br>"); fflush(m_Logfile); } void CLogfile::Textout (const char *Text) { fprintf(m_Logfile,Text); fflush(m_Logfile); } void CLogfile::Textout (int Color,const char* Text) { Textout(Color,false,Text); } void CLogfile::Textout(int Color,bool List,const char*Text) { if(List==true) Textout("<li>"); switch (Color) { case BLACK: Textout("<font color=black>"); break; case RED: Textout("<font color=red>"); break; case GREEN: Textout("<font color=green>"); break; case BLUE: Textout("<font color=blue>"); break; case PURPLE: Textout("<font color=purple>");break; }; Textout(Text); Textout("</font>"); if(List==false) Textout("<br>"); else Textout("</li>"); } void CLogfile::fTextout(const char*Text,...) { TCHAR buffer[MAX_BUFFER]; va_list pArgList; va_start(pArgList,Text); vsprintf(buffer,Text,pArgList); va_end(pArgList); Textout(buffer); } void CLogfile::fTextout(int Color,const char*Text,...) { TCHAR buffer[MAX_BUFFER]; va_list pArgList; va_start(pArgList,Text); vsprintf(buffer,Text,pArgList); va_end(pArgList); Textout(Color,buffer); } void CLogfile::fTextout(int Color,bool List,const char*Text,...) { TCHAR buffer[MAX_BUFFER]; va_list pArgList; va_start(pArgList,Text); vsprintf(buffer,Text,pArgList); va_end(pArgList); Textout(Color,List,buffer); } void CLogfile::FunctionResult(const char *Name,bool Result) { if(L_OK == Result) { Textout("<table width='100%%' cellSpacing='1' cellPading='5'"); Textout("border='0' bgcolor='#c0c0c0'><tr><td bgcolor="); fTextout("'#FFFFFF' width='35%%'>%s</TD>",Name); Textout("<td bgcolor='#FFFFFF' width='30%%'><font color="); Textout("'green'>OK</FONT></TD><td bgcolor='#FFFFFF'"); Textout("width='35%%'>-/-</TD></tr></table"); } else { Textout("<table width='100%%' cellSpacing='1' cellPading='5'"); Textout("border='0' bgcolor='#c0c0c0'><tr><td bgcolor="); fTextout("'#FFFFFF' width='35%%'>%s</TD>",Name); Textout("<td bgcolor='#FFFFFF' width='30%%'><font color="); Textout("'red'>ERROR</FONT></TD><td bgcolor='#FFFFFF'"); Textout("width='35%%'>-/-</TD></tr></table"); } } |
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
#include "Logfile.cpp" #include <iostream> using namespace std; int main() { float Kontrolle =123.456f; g_pLogfile->CreateLogfile("Logfile.html"); g_pLogfile ->WriteTopic("Unformatierter Text",2); g_pLogfile ->Textout("Normaler schwarzer text<br>"); g_pLogfile->Textout(RED,"Roter text"); g_pLogfile->WriteTopic("Formatierter text",2); g_pLogfile->fTextout(RED,"Kontrollvariable: %f",Kontrolle); g_pLogfile->fTextout(GREEN,true,"Liste Kontrolle:%f",Kontrolle); g_pLogfile->fTextout(GREEN,true,"Liste Kontrolle:%f",Kontrolle*2.0f); g_pLogfile->fTextout(GREEN,true,"Liste Kontrolle:%f",Kontrolle*4.0f); g_pLogfile->FunctionResult("Funktion 1",L_OK); g_pLogfile->FunctionResult("Funktion 2",L_FAIL); g_pLogfile->del(); return 0; } |
Werbeanzeige