EDT PDV SDK Documentation 6.2.0
irig2_record Struct Reference

#include <pdv_irig.h>

Data Fields

uint32_t magic
 
uint32_t framecnt
 
union {
t
 
uint32_t clocks
 
uint32_t tickspps
 
struct {
   uint8_t   type: 4
 
   uint8_t   irig_ok: 1
 
   uint8_t   pps_ok: 1
 
   uint8_t   had_irig_error: 1
 
   uint8_t   had_pps_error: 1
 
status
 
double timestamp
 

Detailed Description

Holds the IRIG info captured at the rising edge of frame valid.

Field Documentation

◆ magic

uint32_t irig2_record::magic

This should be IRIG2_MAGIC.

◆ framecnt

uint32_t irig2_record::framecnt

This is the frame counter, which is reset when reset_intfc bit is cleared, normally at the start of acquisition.

◆ 

union { ... } irig2_record::t

There are two modes - seconds from 1970 (Unix time) or raw mode, in which the raw values from IRIG are packed into 32 bits in the raw structure.

◆ clocks

uint32_t irig2_record::clocks

How many 40 MHz ticks in last second

◆ tickspps

uint32_t irig2_record::tickspps

40 MHz ticks since last second

◆ type

uint8_t irig2_record::type

Footer type. Either IRIG2_TYPE_UNIX or IRIG2_TYPE_RAW

◆ irig_ok

uint8_t irig2_record::irig_ok

Has valid IRIG data

◆ pps_ok

uint8_t irig2_record::pps_ok

Is synched with PPS

◆ had_irig_error

uint8_t irig2_record::had_irig_error

Has seen IRIG error

◆ had_pps_error

uint8_t irig2_record::had_pps_error

Has seen PPS error

◆ 

struct { ... } irig2_record::status

Status bits.

◆ timestamp

double irig2_record::timestamp

Monotonic Unix time with fractional seconds. This value is computed by pdv_irig_process_time() after DMA. Fractional time is the 40 MHz count divided by 40 MHz max count.


The documentation for this struct was generated from the following file: