source: lib/dagformat.h @ b5cd711

4.0.1-hotfixescachetimestampsdevelopdpdk-ndagetsilivegetfragoffhelplibtrace4ndag_formatpfringrc-4.0.1rc-4.0.2rc-4.0.3rc-4.0.4ringdecrementfixringperformanceringtimestampfixes
Last change on this file since b5cd711 was b5cd711, checked in by Shane Alcock <salcock@…>, 15 years ago

Changed all references to "fifo" to "tracefifo" with regards to function names and structures.
Fixes namespace conflicts with libfifo.

  • Property mode set to 100644
File size: 2.2 KB
Line 
1#ifndef _DAGFORMAT_H_
2#define _DAGFORMAT_H_
3
4/* GPP record type defines */
5#define TYPE_LEGACY       0
6#define TYPE_HDLC_POS     1
7#define TYPE_ETH          2
8#define TYPE_ATM          3
9#define TYPE_AAL5         4
10
11/* GPP Type 1 */
12typedef struct pos_rec {
13        unsigned                hdlc;
14        unsigned char           pload[1];
15}  pos_rec_t;
16
17/* GPP Type 2 */
18typedef struct eth_rec {
19        unsigned char           offset;
20        unsigned char           pad;
21        unsigned char           dst[6];
22        unsigned char           src[6];
23        unsigned short          etype;
24        unsigned char           pload[1];
25}  eth_rec_t;
26
27/* GPP Type 3 */
28typedef struct atm_rec {
29        unsigned                header; 
30        unsigned char           pload[1];
31}  atm_rec_t;
32
33/* GPP Type 4 */
34typedef struct aal5_rec {
35        unsigned                header; 
36        unsigned char           pload[1];
37}  aal5_rec_t;
38
39typedef struct flags {
40        unsigned char           iface:2;
41        unsigned char           vlen:1;
42        unsigned char           trunc:1;
43        unsigned char           rxerror:1;
44        unsigned char           dserror:1;
45        unsigned char           pad:2;
46} __attribute__((packed)) flags_t;
47
48/* GPP Global type */
49typedef struct dag_record {
50        unsigned long long      ts;
51        unsigned char           type;
52        flags_t                 flags;
53        unsigned short          rlen;
54        unsigned short          lctr;
55        unsigned short          wlen;
56        union {
57                pos_rec_t       pos;
58                eth_rec_t       eth;
59                atm_rec_t       atm;
60                aal5_rec_t      aal5;
61        } rec;
62} __attribute__((packed)) dag_record_t;
63
64
65typedef struct duck_inf
66{
67        unsigned long   Command, Config, Clock_Inc, Clock_Wrap, DDS_Rate;
68        unsigned long   Crystal_Freq;
69        unsigned long   Synth_Freq, Sync_Rate;
70        unsigned long   long Last_Ticks;
71        unsigned long   Resyncs;
72        unsigned long   Bad_Diffs, Bad_Offs, Bad_Pulses;
73        unsigned long   Worst_Error, Worst_Off;
74        unsigned long   Off_Limit, Off_Damp;
75        unsigned long   Pulses, Single_Pulses_Missing, Longest_Pulse_Missing;
76        unsigned long   Health, Sickness;
77        long            Error, Offset;
78        long            Stat_Start, Stat_End;   /* these are really time_t's */
79        unsigned long   Set_Duck_Field;
80} duck_inf;
81
82#define dag_record_size         16
83
84
85#endif // _DAGFORMAT_H_
Note: See TracBrowser for help on using the repository browser.