<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License
"Eclipse Public License v1.0" which accompanies this distribution,
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
Nokia Corporation - initial contribution.
Contributors:
-->
<!DOCTYPE concept
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-D14CD452-BFCE-5EBA-B73B-61AA045D23E4" xml:lang="en"><title>Log
Engine Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p>This topic describes the key concepts of Log Engine. </p>
<section id="GUID-ECD7C71D-F465-48FC-8478-65E5D09E6124"><title>Purpose</title> <p>Used to record events of interest to the
user, of which they may not be immediately aware, or of high importance as
costs are incurred, such as telephone calls. These events can be retrieved
by a viewer application and displayed to the user. </p> </section>
<section id="GUID-44BF0863-2E2B-4E2B-A04A-03956C9A64BA"><title>Architectural relationships</title> <p>The Log Engine is split
into a wrapper (a stub interface) that is present on all UI variants, and
an actual logging DLL that may or may not be present. On UI variants on which
the actual logging engine is not present, calls to the wrapper will have no
effect. Programs written for multiple UI variants should use the wrapper only.
Programs for a particular UI variant on which the log engine is present can
use it directly. </p> </section>
<section id="GUID-D2D4E2AA-1842-4394-B916-3B473C578DBE"><title>Description</title> <p>The API has five key concepts: log
engine wrapper, log client, event, view, and filter. </p> <p><b>Log
engine wrapper</b> </p> <p>The log engine wrapper provides simple interfaces
to record events, and is present on all UI variants. The wrapper interfaces
are <xref href="GUID-146D719E-BDD6-3F20-80B1-EDE09081A6EA.dita"><apiname>CLogWrapper</apiname></xref> and <xref href="GUID-4A7D312F-A8C6-3663-8455-13FA73F1CFB5.dita"><apiname>CLogBase</apiname></xref>. </p> <p><b>Log client</b> </p> <p>The log client is the main direct interface on
the log engine. It is used to add, delete, and change log events, and allows
log administration. It is also used to create filtered views of events. </p> <p>The
log client interface is <xref href="GUID-51C67545-12BA-326D-BD8F-662B24C68ED2.dita"><apiname>CLogClient</apiname></xref>. </p> <p><b>Event</b> </p> <p>A log event is an entry in the log. Events have a fixed
number of data fields, though some fields do not apply to all events. </p> <p>The
event interface is <xref href="GUID-CDFB61A7-1C74-3F63-9FDF-5A3B8603A010.dita"><apiname>CLogEvent</apiname></xref>. </p> <p><b>View</b> </p> <p>A view allows a filtered list of events to be accessed.
Views are provided for the main event log (<codeph>CLogViewEvent</codeph>)
and for recent events only (<xref href="GUID-F40F9556-F223-36A5-9812-6EF6FF3F5156.dita"><apiname>CLogViewRecent</apiname></xref>). </p> <p><b>Filter </b> </p> <p>A filter specifies the type of events that appear
in a view. The filter interface is <xref href="GUID-99144BA6-F79A-3D3C-B1D3-272B3723C42C.dita"><apiname>CLogFilter</apiname></xref>. </p> </section>
</conbody><related-links>
<link href="GUID-B0D76734-1DB7-5465-91AE-BB3521599A75.dita"><linktext>How To Use
the Log Engine</linktext></link>
<link href="GUID-F3770B99-5228-5D29-8CA6-71028A327714.dita"><linktext> Log Engine
Using Central Repository</linktext></link>
</related-links></concept>