module xdc.runtime.Timestamp

Timestamp services

This module provides xdc.runtime.ITimestampClient APIs for the xdc Runtime Support Library. Calls to these APIs are forwarded to a platform specific xdc.runtime.ITimestampProvider implementation. [ more ... ]
C synopsis target-domain sourced in xdc/runtime/Timestamp.xdc
DETAILS
This module provides xdc.runtime.ITimestampClient APIs for the xdc Runtime Support Library. Calls to these APIs are forwarded to a platform specific xdc.runtime.ITimestampProvider implementation.
A user can attach their own ITimestampProvider module using the following config file command:
  xdc.runtime.Timestamp.SupportProxy = xdc.useModule("usersTimestampProvider");
If no such SupportProxy initialization is done, the xdc.runtime.TimestampNull ITimestampProvider implementation, which provides null stubs for the APIs, will be attached by default.
If the user is developing code using CCS, the xdc.runtime.TimestampStd ITimestampProvider implementation, which uses the ANSI C clock() function, may provide a satisfactory timestamp source (remember to enable the profile clock in CCS).
To use the TimestampStd implementation, add the following to your config script:
  xdc.runtime.Timestamp.SupportProxy = xdc.useModule("xdc.runtime.TimestampStd");
 
Timestamp_get32()  // module-wide

Return a 32-bit timestamp

C synopsis target-domain
Bits32 Timestamp_get32();
 
RETURNS
Returns a 32-bit timestamp value. Use getFreq to convert this value into units of real time.
SEE
 
Timestamp_get64()  // module-wide

Return a 64-bit timestamp

C synopsis target-domain
Void Timestamp_get64(Types_Timestamp64 *result);
 
ARGUMENTS
result — pointer to 64-bit result
This parameter is a pointer to a structure representing a 64-bit wide timestamp value where the current timestamp is written.
If the underlying hardware does not support 64-bit resolution, the hi field of result is always set to 0; see xdc.runtime.Types.Timestamp64. So, it is possible for the lo field to wrap around without any change to the hi field. Use getFreq to convert this value into units of real time.
SEE
 
Timestamp_getFreq()  // module-wide

Get the timestamp timer's frequency (in Hz)

C synopsis target-domain
Void Timestamp_getFreq(Types_FreqHz *freq);
 
ARGUMENTS
freq — pointer to a 64-bit result
This parameter is a pointer to a structure representing a 64-bit wide frequency value where the timer's frequency (in Hz) is written; see xdc.runtime.Types.FreqHz. This function provides a way of converting timestamp values into units of real time.
SEE
Module-Wide Built-Ins

C synopsis target-domain
Types_ModuleId Timestamp_Module_id();
// Get this module's unique id
 
Bool Timestamp_Module_startupDone();
// Test if this module has completed startup
 
IHeap_Handle Timestamp_Module_heap();
// The heap from which this module allocates memory
 
Bool Timestamp_Module_hasMask();
// Test whether this module has a diagnostics mask
 
Bits16 Timestamp_Module_getMask();
// Returns the diagnostics mask for this module
 
Void Timestamp_Module_setMask(Bits16 mask);
// Set the diagnostics mask for this module
 
Configuration settings sourced in xdc/runtime/Timestamp.xdc
var Timestamp = xdc.useModule('xdc.runtime.Timestamp');
local proxy modules
        Timestamp.SupportProxy.delegate$ = ITimestampProvider.Module null
module-wide config parameters
 
 
proxy Timestamp.SupportProxy

User supplied time stamp provider module

Configuration settings
Timestamp.SupportProxy = ITimestampProvider.Module null
// some delegate module inheriting the ITimestampProvider interface
    Timestamp.SupportProxy.delegate$ = ITimestampProvider.Module null
    // explicit access to the currently bound delegate module
 
DETAILS
The SupportProxy module provides application/platform specific implementations of the xdc.runtime.ITimestampProvider APIs.
If not explicitly supplied by the user, this proxy defaults to xdc.runtime.TimestampNull, which provides null stubs for all of the ITimestampProvider APIs.
 
metaonly config Timestamp.common$  // module-wide

Common module configuration parameters

Configuration settings
Timestamp.common$ = Types.Common$ undefined;
 
DETAILS
All modules have this configuration parameter. Its name contains the '$' character to ensure it does not conflict with configuration parameters declared by the module. This allows new configuration parameters to be added in the future without any chance of breaking existing modules.
generated on Thu, 23 May 2019 00:24:46 GMT