YAML clock type object
A clock type object is the type of data stream clocks.
Clock type objects are only found under the
clock-types property of a
trace type object.
The only purpose of a clock type is to be a data stream type object's default clock type.
Properties
All the properties are optional.
| Name | Type | Description | Default | 
|---|---|---|---|
| Integer, greater than 0 | Frequency of instances (Hz). | 1,000,000,000 (1 GHz) | |
| Offset of instances. | See Clock type offset object for default values. | ||
| 
 | Boolean | True if the origin of instances is the Unix epoch. | True | 
| 
 | Positive integer | Precision of instances (cycles). | 0 | 
| 
 | Clock type’s UUID. | No UUID | |
| 
 | String | Clock type’s description. | No description | 
| String | Return C type of the clock source function for this clock type. See Write a barectf platform to learn more. | 
 | |
| Sequence of strings. | No inclusions | 
Clock type offset object
Offset information of a clock type’s instances.
Properties
All the properties are optional.
| Name | Type | Description | Default | 
|---|---|---|---|
| 
 | Integer | Offset in seconds. | 0 | 
| 
 | Positive integer | Offset in cycles. | 0 | 
The two properties form an effective offset (from the clock’s origin) as such:
seconds + cycles / frequency
frequency is a clock type property.
Examples
This empty mapping, when used where a clock type is expected, is a valid, default clock type.
{}frequency: 100000$c-type: unsigned long longfrequency: 8000000
offset:
  seconds: 1600463226
  cycles: 200000
origin-is-unix-epoch: false
precision: 8
uuid: 79e49040-21b5-42d4-a873-677261696e65
description: System clock
$c-type: uint64_t$include: [base-clock-type.yaml]
frequency: 8000000