1 /* --COPYRIGHT--,ESD
2 * Copyright (c) 2008 Texas Instruments. All rights reserved.
3 * This program and the accompanying materials are made available under the
4 * terms of the Eclipse Public License v1.0 and Eclipse Distribution License
5 * v. 1.0 which accompanies this distribution. The Eclipse Public License is
6 * available at http://www.eclipse.org/legal/epl-v10.html and the Eclipse
7 * Distribution License is available at
8 * http://www.eclipse.org/org/documents/edl-v10.php.
9 *
10 * Contributors:
11 * Texas Instruments - initial implementation
12 * --/COPYRIGHT--*/
13 /*
14 * ======== LoggerSys.xdc ========
15 *
16 *! Revision History
17 *! ================
18 *! 17-Dec-2007 sasa added code review comments
19 */
20
21 /*!
22 * ======== LoggerSys ========
23 * A logger which routes events to the system `printf` function.
24 *
25 * This logger processes log events as they are generated and routes
26 * them through the `{@link System#printf System_printf()}` function.
27 * The final disposition of the log event is dependent on which system
28 * provider has been assigned to the
29 * `{@link System#SupportProxy System.SupportProxy}` configuration parameter.
30 *
31 * Note that the log events are processed within the runtime context
32 * of the `{@link Log Log_write()}` or `{@link Log Log_print()}` function
33 * that generated the event. It is important to account for the processing
34 * overhead and stack usage imposed on the runtime context. The cost of
35 * this processing is defined by the implementation of the system provider.
36 *
37 * @a(Examples) 38 * Configuration example: The following XDC configuration statements
39 * create a logger instance, assign it as the default logger for all
40 * modules, and enable `USER1` logging in all modules of the package
41 * `my.pkg`. See the `{@link Diags#setMaskMeta Diags.setMaskMeta()}` function
42 * for details on specifying the module names.
43 *
44 * @p(code) 45 * var Defaults = xdc.useModule('xdc.runtime.Defaults');
46 * var Diags = xdc.useModule('xdc.runtime.Diags');
47 * var LoggerSys = xdc.useModule('xdc.runtime.LoggerSys');
48 *
49 * var LoggerSysParams = new LoggerSys.Params();
50 * Defaults.common$.logger = LoggerSys.create(LoggerSysParams);
51 * Diags.setMaskMeta("my.pkg.%", Diags.USER1, Diags.RUNTIME_ON);
52 * @p 53 */
54
55 module LoggerSys inherits ILogger {
56
57 /*!
58 * ======== ITimestampProxy ========
59 * User supplied time-stamp proxy
60 *
61 * This proxy allows `LoggerSys` to use a timestamp server different
62 * from the server used by `{@link xdc.runtime.Timestamp}`. However, if
63 * not supplied by a user, this proxy defaults to whichever timestamp
64 * server is used by `Timestamp`.
65 */
66 proxy TimestampProxy inherits ITimestampClient;
67
68 instance:
69
70 /*!
71 * ======== create ========
72 * Create a `LoggerSys` logger
73 *
74 * The logger instance will route all log events it receives to
75 * the {@link System#printf} function.
76 */
77 create();
78 }
79 /*
80 * @(#) xdc.runtime; 2, 0, 0, 0,236; 12-18-2009 12:27:14; /db/ztree/library/trees/xdc/xdc-u16x/src/packages/
81 */
82