Symbian3/PDK/Source/GUID-17798BAC-F887-515F-B90E-CAAE81D8530F.dita
changeset 12 80ef3a206772
parent 11 5072524fcc79
child 13 48780e181b38
equal deleted inserted replaced
11:5072524fcc79 12:80ef3a206772
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept xml:lang="en" id="GUID-17798BAC-F887-515F-B90E-CAAE81D8530F"><title>Trace Terminologies</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>This topic lists the various trace terminologies that are changed or added in UTF 2.0. </p> <section id="GUID-8AA6AFDC-6E86-56A8-8DD8-71F06590E62F"><title>ModuleUid</title> <p>The secondary filter in UTF 1.0 is replaced with ModuleUid in UTF 2.0. </p> <p>Every trace packet is assigned a default value <codeph>0</codeph> to ModuleUid by its originating trace point to indicate the code module in which the trace point is defined. You are recommended to override the default value ModuleUid by adding the macro <codeph>MACRO
       
    13           EXECUTABLE_DEFAULT_MODULEUID=0xuid3</codeph> to your <filepath>MMP</filepath> file. </p> <p>A common value for the ModuleUid is the UID3 of the associated binary file. In some cases, it is not suitable to use the UID3 as a ModuleUid. For example, you may not need to trace across the entire component, if it is very big. In such cases, you can obtain a unique ModuleUid from <codeph>SymbianSigned</codeph> and assign to a particular use case or set a ModuleUid for each instance of <codeph>TTraceContext</codeph> without setting a default value for the component. </p> <p>For details about SymbianSigned, see <xref scope="external" href="https://www.symbiansigned.com">https://www.symbiansigned.com</xref>. </p> <p> <b>Note</b>: A ModuleUid must not be used for trace points in more than one compiled binary file. </p> </section> <section id="GUID-B8F5C3DB-6C9D-514E-8B4E-DC6B994789B9"><title>Classification</title> <p>The primary filter in UTF 1.0 is replaced with Classification in UTF 2.0. </p> <p>Every trace packet is assigned a classification by its originating trace point. This is a label that indicates the intended use of the trace points or trace packets. </p> <p>The classification can reflect a system-wide tracing use-case, such as indicating why a Panic occurred. It can also be assigned to trace packets from performance critical software, such as the kernel or other key services. </p> <p> <b>Note</b>: The ModuleUid and Classification attributes of a trace point are independent. </p> </section> <section id="GUID-FEE8132A-0BF4-5D25-AF12-D5B7CF2071A3"><title>FormatId</title> <p>The 1-byte schema in UTF 1.0 is replaced with 2-byte FormatId. </p> <p>FormatId is a numerical value assigned to a trace point which is used on the host PC to look up the format of the associated trace packets. </p> <p>The meaning of a FormatId is specific to the ModuleUid of the associated trace packet. For example, the FormatId <codeph>1</codeph> can be interpreted on the host PC as “<codeph>RProcess::Create returned %d</codeph> ” for the ModuleUid <codeph>130e0751</codeph> but can be interpreted as “<codeph>Something
       
    14           odd happened: %s</codeph> ” for the ModuleUid <codeph>1000015c</codeph>. </p> <p> <b>Note</b>: A trace point with no FormatId (using a <codeph>Printf</codeph> call instead of a Trace call) indicates that the trace packet contains text and needs no further formatting. </p> </section> <section id="GUID-2AC3D214-D959-523C-9F9D-784A463FE6E0"><title>Trace Point Context</title> <p>The trace point context is newly added in UTF 2.0. It includes information describing the circumstances of a trace point. The trace point context data is used to include certain data in the trace packet generated at run-time. </p> <p>The context of a trace point can include information such as source code line, source file and binary file. It can be used to map trace information to the source. </p> <p> <b>Note</b>: A trace point context can be re-used by several trace points. </p> </section> <section><title>UTF Namespace</title> <p>The UTF namespace is newly added in UTF 2.0. It contains a set of libraries providing the trace point, trace filter, storage, buffer management and transport APIs required on the device for tracing to be performed. </p> </section> </conbody><related-links><link href="GUID-B95D96F5-6EA0-596C-BA06-F0703D3FCDFF.dita"><linktext>Trace Record Frame Format</linktext> </link> </related-links></concept>