aboutsummaryrefslogtreecommitdiffstats
path: root/Game/Code/Classes/ULog.pas
diff options
context:
space:
mode:
authorwhiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c>2007-07-08 12:00:15 +0000
committerwhiteshark0 <whiteshark0@b956fd51-792f-4845-bead-9b4dfca2ff2c>2007-07-08 12:00:15 +0000
commitdd3cc6f8e84f03f626a88741474412d36e4d18ac (patch)
treeb4c398b4f01aac329108b77008b62bdad9209820 /Game/Code/Classes/ULog.pas
parentdce08a8771098ac1a56dd4548202454ab268e951 (diff)
downloadusdx-dd3cc6f8e84f03f626a88741474412d36e4d18ac.tar.gz
usdx-dd3cc6f8e84f03f626a88741474412d36e4d18ac.tar.xz
usdx-dd3cc6f8e84f03f626a88741474412d36e4d18ac.zip
Improved Error Logging and Benchmark:
Write US Version, date and time to files. Added better Commandline Parameter Interpreter: More than one parameter can be used at the same time Many new, useful farameters: e.g. No error logging, Resolution change, FullScreen, DualScreen Mode, other Config File, other Score File and SongPath git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@274 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Classes/ULog.pas')
-rw-r--r--Game/Code/Classes/ULog.pas68
1 files changed, 34 insertions, 34 deletions
diff --git a/Game/Code/Classes/ULog.pas b/Game/Code/Classes/ULog.pas
index 59e25954..9d20d2f1 100644
--- a/Game/Code/Classes/ULog.pas
+++ b/Game/Code/Classes/ULog.pas
@@ -11,13 +11,14 @@ type
FileBenchmark: TextFile;
FileBenchmarkO: boolean; // opened
- FileAnalyze: TextFile;
- FileAnalyzeO: boolean; // opened
FileError: TextFile;
FileErrorO: boolean; // opened
Title: String; //Application Title
+ //Should Log Files be written
+ Enabled: Boolean;
+
// destuctor
destructor Free;
@@ -26,9 +27,6 @@ type
procedure BenchmarkEnd(Number: integer);
procedure LogBenchmark(Text: string; Number: integer);
- // analyze
- procedure LogAnalyze(Text: string);
-
// error
procedure LogError(Text: string); overload;
@@ -47,7 +45,7 @@ var
Log: TLog;
implementation
-uses UFiles, SysUtils, DateUtils, URecord, UTime, UIni, Windows;
+uses UFiles, SysUtils, DateUtils, URecord, UTime, UIni, Windows, UCommandLine;
destructor TLog.Free;
begin
@@ -78,7 +76,7 @@ var
ValueText: string;
begin
- if (ParamStr(1) = '-benchmark') then begin
+ if Enabled AND (Params.Benchmark) then begin
if not FileBenchmarkO then begin
FileBenchmarkO := true;
AssignFile(FileBenchmark, LogPath + 'Benchmark.log');
@@ -86,6 +84,16 @@ begin
Rewrite(FileBenchmark);
if IOResult = 0 then FileBenchmarkO := true;
{$I+}
+
+ //If File is opened write Date to Benchmark File
+ If (FileBenchmarkO) then
+ begin
+ WriteLn(FileBenchmark, Title + ' Benchmark File');
+ WriteLn(FileBenchmark, 'Date: ' + DatetoStr(Now) + ' Time: ' + TimetoStr(Now));
+ WriteLn(FileBenchmark, '-------------------');
+
+ Flush(FileBenchmark);
+ end;
end;
if FileBenchmarkO then begin
@@ -133,44 +141,34 @@ begin
end;
end;
-procedure TLog.LogAnalyze(Text: string);
-var
- Seconds: integer;
- Miliseconds: integer;
- ValueText: string;
-begin
- //if Ini.Debug = 1 then begin
-
- if not FileAnalyzeO then begin
- AssignFile(FileAnalyze, LogPath + 'Analyze.log');
- {$I-}
- Rewrite(FileAnalyze);
- if IOResult = 0 then FileAnalyzeO := true;
- {$I+}
- end;
-
- if FileAnalyzeO then begin
- WriteLn(FileAnalyze, Text);
- Flush(FileAnalyze); // try to speed up
- end;
-
- //end;
-end;
-
procedure TLog.LogError(Text: string);
begin
- if not FileErrorO then begin
+ if Enabled AND (not FileErrorO) then begin
FileErrorO := true;
AssignFile(FileError, LogPath + 'Error.log');
{$I-}
Rewrite(FileError);
if IOResult = 0 then FileErrorO := true;
{$I+}
+
+ //If File is opened write Date to Error File
+ If (FileErrorO) then
+ begin
+ WriteLn(FileError, Title + ' Error Log');
+ WriteLn(FileError, 'Date: ' + DatetoStr(Now) + ' Time: ' + TimetoStr(Now));
+ WriteLn(FileError, '-------------------');
+
+ Flush(FileError);
+ end;
end;
if FileErrorO then begin
- WriteLn(FileError, Text);
- Flush(FileError);
+ try
+ WriteLn(FileError, Text);
+ Flush(FileError);
+ except
+ FileErrorO := false;
+ end;
end;
end;
@@ -225,3 +223,5 @@ begin
end;
end.
+
+