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 132 133 134 135 136 137 138 139
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/loose.dtd">
<html>
<head>
<title>Castle Game Engine: CastleLog</title>
<meta name="generator" content="PasDoc 0.13.0">
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<link rel="StyleSheet" type="text/css" href="pasdoc.css">
</head>
<body>
<table class="container"><tr><td class="navigation">
<h2>Castle Game Engine</h2><p><a href="introduction.html" class="navigation">Introduction</a></p><p><a href="AllUnits.html" class="navigation">Units</a></p><p><a href="ClassHierarchy.html" class="navigation">Class Hierarchy</a></p><p><a href="AllClasses.html" class="navigation">Classes, Interfaces, Objects and Records</a></p><p><a href="AllTypes.html" class="navigation">Types</a></p><p><a href="AllVariables.html" class="navigation">Variables</a></p><p><a href="AllConstants.html" class="navigation">Constants</a></p><p><a href="AllFunctions.html" class="navigation">Functions and Procedures</a></p><p><a href="AllIdentifiers.html" class="navigation">Identifiers</a></p></td><td class="content">
<h1 class="unit">Unit CastleLog</h1>
<table class="sections wide_list">
<tr>
<td><a class="section" href="#PasDoc-Description">Description</a></td><td><a class="section" href="#PasDoc-Uses">Uses</a></td><td>Classes, Interfaces, Objects and Records</td><td><a class="section" href="#PasDoc-FuncsProcs">Functions and Procedures</a></td><td>Types</td><td>Constants</td><td>Variables</td></tr></table>
<a name="PasDoc-Description"></a><h2 class="description">Description</h2>
<p>
Logging. Log has to be activated in your program (nothing in the Castle Game Engine activates it automatically) by <a class="normal" href="CastleLog.html#InitializeLog">InitializeLog</a>. Various units of the engine print some logging info when <a class="normal" href="CastleLog.html#Log">Log</a> is true.</p>
<a name="PasDoc-Uses"></a><h2 class="uses">Uses</h2>
<ul class="useslist"><li>Classes</li></ul><h2 class="overview">Overview</h2>
<a name="PasDoc-FuncsProcs"></a><h3 class="summary">Functions and Procedures</h3>
<table class="summary wide_list">
<tr class="list">
<td class="itemcode"><code>function <b><a href="CastleLog.html#Log">Log</a></b>: boolean;</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code>procedure <b><a href="CastleLog.html#InitializeLog">InitializeLog</a></b>(const ProgramVersion: string = 'Unknown'; const ALogStream: TStream = nil);</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code>procedure <b><a href="CastleLog.html#WritelnLog">WritelnLog</a></b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code>procedure <b><a href="CastleLog.html#WritelnLog">WritelnLog</a></b>(const Title: string; const LogMessageBase: string; const Args: array of const);</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code>procedure <b><a href="CastleLog.html#WriteLog">WriteLog</a></b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr class="list2">
<td class="itemcode"><code>procedure <b><a href="CastleLog.html#WriteLogMultiline">WriteLogMultiline</a></b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr class="list">
<td class="itemcode"><code>procedure <b><a href="CastleLog.html#WritelnLogMultiline">WritelnLogMultiline</a></b>(const Title: string; const LogMessage: string);</code></td>
</tr>
</table>
<h2 class="description">Description</h2>
<h3 class="detail">Functions and Procedures</h3>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="Log"></a><code>function <b>Log</b>: boolean;</code></td>
</tr>
<tr><td colspan="1">
<p>
Is logging active. Initially no. Activate by <a class="normal" href="CastleLog.html#InitializeLog">InitializeLog</a>.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="InitializeLog"></a><code>procedure <b>InitializeLog</b>(const ProgramVersion: string = 'Unknown'; const ALogStream: TStream = nil);</code></td>
</tr>
<tr><td colspan="1">
<p>
Initialize logging.
<p>If you leave ALogStream as <code>Nil</code> (default), then we will prints log messages to StdOut, not to some external file. This is most useful and common behavior on Unixes, where most programs log to StdOut, and StdOut is always available. It also removes any problems with users asking "where can I find the log file?". The downside is that Windows users have to explicitly redirect StdOut of the GUI program to get the log, i.e. run your program from command-line like "program.exe > log.txt". Otherwise, GUI programs (with apptype GUI) do not have StdOut available under Windows.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="WritelnLog"></a><code>procedure <b>WritelnLog</b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr><td colspan="1">
<p>
Log message. Ignored when log is not initialized (<a class="normal" href="CastleLog.html#Log">Log</a> is <code>False</code>).
<p>Although we check <a class="normal" href="CastleLog.html#Log">Log</a> here, you can also check it yourself before even calling this procedure. This way you can avoid spending time on constructing LogMessage.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="WritelnLog"></a><code>procedure <b>WritelnLog</b>(const Title: string; const LogMessageBase: string; const Args: array of const);</code></td>
</tr>
<tr><td colspan="1">
<p>
Format and log message. Ignored when log is not initialized (<a class="normal" href="CastleLog.html#Log">Log</a> is <code>False</code>).
<p>This is a shortcut for <code><code>WritelnLog</code>(Title, Format(LogMessageBase, Args))</code>.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="WriteLog"></a><code>procedure <b>WriteLog</b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr><td colspan="1">
<p>
Log message, without appending newline at the end (given LogMessage should already contain a final newline).</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="WriteLogMultiline"></a><code>procedure <b>WriteLogMultiline</b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr><td colspan="1">
<p>
Log multiline message. LogMessage may be multiline and must be terminated by final newline.</p>
</td></tr>
</table>
<table class="detail wide_list">
<tr class="list">
<td class="itemcode"><a name="WritelnLogMultiline"></a><code>procedure <b>WritelnLogMultiline</b>(const Title: string; const LogMessage: string);</code></td>
</tr>
<tr><td colspan="1">
<p>
Log multiline message. LogMessage may be multiline and must <i>not</i> be terminated by a final newline, because we will add final newline ourselves.</p>
</td></tr>
</table>
<!-- Piwik -->
<script type="text/javascript">
var _paq = _paq || [];
_paq.push(["trackPageView"]);
_paq.push(["enableLinkTracking"]);
(function() {
var u=(("https:" == document.location.protocol) ? "https" : "http") + "://michalis.ii.uni.wroc.pl/piwik-castle-engine/";
_paq.push(["setTrackerUrl", u+"piwik.php"]);
_paq.push(["setSiteId", "1"]);
var d=document, g=d.createElement("script"), s=d.getElementsByTagName("script")[0]; g.type="text/javascript";
g.defer=true; g.async=true; g.src=u+"piwik.js"; s.parentNode.insertBefore(g,s);
})();
</script>
<!-- End Piwik Code -->
<noscript>
<!-- Piwik Image Tracker -->
<img src="http://michalis.ii.uni.wroc.pl/piwik-castle-engine/piwik.php?idsite=1&rec=1" style="border:0" alt="" />
<!-- End Piwik -->
</noscript>
<hr noshade size="1"><span class="appinfo"><em>Generated by <a href="http://pasdoc.sourceforge.net/">PasDoc 0.13.0</a> on 2015-06-15 04:43:10</em>
</span>
</td></tr></table></body></html>
|