1 2 3 4 5 6 7 8 9 10 11 12
13 14 15
16
17 package xdc.runtime;
18
19 /*!
20 * ======== Timestamp ========
21 * Timestamp services
22 *
23 * This module provides `{@link xdc.runtime.ITimestampClient}` APIs for
24 * the xdc Runtime Support Library. Calls to these APIs are forwarded
25 * to a platform specific `{@link xdc.runtime.ITimestampProvider}`
26 * implementation.
27 *
28 * A user can attach their own ITimestampProvider module
29 * using the following config file command:
30 * @p(code)
31 *
32 * xdc.runtime.Timestamp.SupportProxy = xdc.useModule("usersTimestampProvider");
33 * @p
34 * If no such `{@link #SupportProxy SupportProxy}` initialization is done,
35 * the `{@link xdc.runtime.TimestampNull}` ITimestampProvider implementation,
36 * which provides null stubs for the APIs, will be attached by default.
37 *
38 * If the user is developing code using CCS, the
39 * `{@link xdc.runtime.TimestampStd}`
40 * ITimestampProvider implementation, which uses the ANSI C clock()
41 * function, may provide a satisfactory timestamp source (remember to
42 * enable the profile clock in CCS).
43 *
44 * To use the TimestampStd implementation, add the following to
45 * your config script:
46 * @p(code)
47 *
48 * xdc.runtime.Timestamp.SupportProxy = xdc.useModule("xdc.runtime.TimestampStd");
49 * @p
50 */
51 @RomConsts
52
53 module Timestamp inherits ITimestampClient {
54
55 /*!
56 * ======== SupportProxy ========
57 * User supplied time stamp provider module.
58 *
59 * The SupportProxy module provides application/platform
60 * specific implementations of the
61 * `{@link xdc.runtime.ITimestampProvider}` APIs.
62 *
63 * If not explicitly supplied by the user, this proxy defaults to
64 * `{@link xdc.runtime.TimestampNull}`,
65 * which provides null stubs for all of the ITimestampProvider APIs.
66 */
67 proxy SupportProxy inherits ITimestampProvider;
68 }
69 70 71
72