HOPS
HOPS class reference
usearray.h
Go to the documentation of this file.
1 #ifndef usearray_done /* Allow multiple includes */
2 #define usearray_done
3 
4 /* 64 wasn't enough, Nov 18, 2016 */
5 #define MAX_PARMS 256
6  /* Extractable parameters */
7 #define REF_PCAL_AMP 1
8 #define REF_PCAL_PHASE 2
9 #define REF_PCAL_DIFF 3
10 #define REF_PCAL_FREQ 4
11 #define REF_PCAL_RATE 5
12 #define REM_PCAL_AMP 6
13 #define REM_PCAL_PHASE 7
14 #define REM_PCAL_DIFF 8
15 #define REM_PCAL_FREQ 9
16 #define REM_PCAL_RATE 10
17 #define TRKNO_REF_USB 11
18 #define TRKNO_REF_LSB 12
19 #define TRKNO_REM_USB 13
20 #define TRKNO_REM_LSB 14
21 #define ERRATE_REF_USB 15
22 #define ERRATE_REF_LSB 16
23 #define ERRATE_REM_USB 17
24 #define ERRATE_REM_LSB 18
25 #define NAP_USB 19
26 #define NAP_LSB 20
27 #define COREL_AMP 21
28 #define COREL_PHASE 22
29 /* #define OBS_DELAY_RATE 0 */
30 #define RATE_ERROR 23
31 #define MBDELAY_ERROR 24
32 #define SBDELAY_ERROR 25
33 #define TOTAL_PHASE 26
34 #define TOT_PHASE_MID 27
35 #define INCOH_AMP_SEG 28
36 #define INCOH_AMP_FREQ 29
37 /*********** Redundant with A-file format version >= 2
38  #define REF_ELEVATION 0
39  #define REM_ELEVATION 0
40  #define FR_ARCSEC_NS 0
41  #define FR_ARCSEC_EW 0
42 ***********/
43 #define MHZ_ARCSEC_NS 30
44 #define MHZ_ARCSEC_EW 31
45 #define PCNT_DISCARD 32
46 #define MIN_MAX_RATIO 33
47 /*********** Redundant with A-file format version >= 2
48  #define REF_FREQUENCY 0
49 ***********/
50 #define LO_FREQUENCY 34
51 #define XPERROR 35
52 #define YPERROR 36
53 #define SUPPRESS 37
54 #define PPUPDATE 38
55 #define XSLIP 39
56 #define YSLIP 40
57 #define BADSYNC 41
58 #define REF_DRIVE 42
59 #define REM_DRIVE 43
60 #define UTC_CENTRAL 44
61 #define UTC_EPOCH 45
62 #define CLOCK_DELAY 46
63 #define PROB_FALSE 47
64 
65 #define IN_ALINE 50 /* Threshold value */
66  /* Numeric parameters already in A-line */
67 #define LENGTH 51
68 #define TIMETAG 52
69 #define AMPLITUDE 53
70 #define SNR 54
71 #define PHASE 55
72 #define RESID_SBD 56
73 #define RESID_MBD 57
74 #define AMBIGUITY 58
75 #define RESID_RATE 59
76 #define REF_ELEVATION 60
77 #define REM_ELEVATION 61
78 #define REF_AZIMUTH 62
79 #define REM_AZIMUTH 63
80 #define U 64
81 #define V 65
82 #define REF_FREQUENCY 66
83 #define TOTAL_EC_PHASE 67
84 #define TOTAL_RATE 68
85 #define TOTAL_MBD 69
86 #define TOTAL_SBD_MBD 70
87 #define PROCDATE 71
88 #define QCODE 72
89 
90 struct udat
91  {
92  char *parameter_name; /* String id of parameter */
93  int parameter_index; /* array element for parameters with */
94  /* multiple entries (e.g. per freq) */
95  int parameter_id; /* Numerical identifying tag */
96  };
97 
98 struct usearray
99  {
100  int nparms; /* Number of parameters currently used */
101  int npoints; /* Number of points with extracted parms */
102  struct udat type[MAX_PARMS]; /* Info on what parameter fields are */
103  int allocated[MAX_PARMS]; /* Flag to avoid malloc/free screwups */
104  double *parameter[MAX_PARMS]; /* Actual data, dynamically allocated */
105  };
106 
107 #endif
struct udat type[MAX_PARMS]
Definition: usearray.h:102
int parameter_index
Definition: usearray.h:93
int allocated[MAX_PARMS]
Definition: usearray.h:103
int npoints
Definition: usearray.h:101
int parameter_id
Definition: usearray.h:95
char * parameter_name
Definition: usearray.h:92
#define MAX_PARMS
Definition: usearray.h:5
double * parameter[MAX_PARMS]
Definition: usearray.h:104
int nparms
Definition: usearray.h:100
Definition: usearray.h:91
Definition: usearray.h:99