tomwalters@0
|
1 /*
|
tomwalters@0
|
2 Copyright (c) Applied Psychology Unit, Medical Research Council. 1993
|
tomwalters@0
|
3 ===========================================================================
|
tomwalters@0
|
4
|
tomwalters@0
|
5 Permission to use, copy, modify, and distribute this software without fee
|
tomwalters@0
|
6 is hereby granted for research purposes, provided that this copyright
|
tomwalters@0
|
7 notice appears in all copies and in all supporting documentation, and that
|
tomwalters@0
|
8 the software is not redistributed for any fee (except for a nominal
|
tomwalters@0
|
9 shipping charge). Anyone wanting to incorporate all or part of this
|
tomwalters@0
|
10 software in a commercial product must obtain a license from the Medical
|
tomwalters@0
|
11 Research Council.
|
tomwalters@0
|
12
|
tomwalters@0
|
13 The MRC makes no representations about the suitability of this
|
tomwalters@0
|
14 software for any purpose. It is provided "as is" without express or
|
tomwalters@0
|
15 implied warranty.
|
tomwalters@0
|
16
|
tomwalters@0
|
17 THE MRC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
tomwalters@0
|
18 ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
tomwalters@0
|
19 THE A.P.U. BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES
|
tomwalters@0
|
20 OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
tomwalters@0
|
21 WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
tomwalters@0
|
22 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
tomwalters@0
|
23 SOFTWARE.
|
tomwalters@0
|
24 */
|
tomwalters@0
|
25
|
tomwalters@0
|
26 /*------------------------------------------------------------------------*/
|
tomwalters@0
|
27
|
tomwalters@0
|
28 /* tr.h
|
tomwalters@0
|
29 * ------
|
tomwalters@0
|
30 *
|
tomwalters@0
|
31 * Main include file.
|
tomwalters@0
|
32 *
|
tomwalters@0
|
33 * MAA Summer 1993.
|
tomwalters@0
|
34 * Revised Winter 1994.
|
tomwalters@0
|
35 */
|
tomwalters@0
|
36
|
tomwalters@0
|
37
|
tomwalters@0
|
38 /*---------------------------------------------------------------------------*/
|
tomwalters@0
|
39 /*---------------------------------------------------------------------------*/
|
tomwalters@0
|
40
|
tomwalters@0
|
41
|
tomwalters@0
|
42 #define ERROR_INTERVAL 0 /* +/- value that the intervals are
|
tomwalters@0
|
43 allowed to be in: in SAMPLES ... */
|
tomwalters@0
|
44 #define ERROR_MAG 10 /* in percent ... +/- */
|
tomwalters@0
|
45
|
tomwalters@0
|
46
|
tomwalters@0
|
47 #define MAX_DATA 6615 /* 0.15 image seconds, 44100 s sec-1*/
|
tomwalters@0
|
48 #define MAX_CHANNELS 300 /* thus size of array is
|
tomwalters@0
|
49 * MAX_DATA * this = 1984500 samples*/
|
tomwalters@0
|
50 #define MAX_PEAKS 1000 /* in a single channel */
|
tomwalters@0
|
51 #define MAX_NEXTEVENTS 1000 /* ditto */
|
tomwalters@0
|
52 #define ALIGN_CHANNELS 2 /* Default number of channels to
|
tomwalters@0
|
53 * align over */
|
tomwalters@0
|
54
|
tomwalters@0
|
55 #define MAX_STRING_LENGTH 255 /* of a filename, etc */
|
tomwalters@0
|
56 #define NULLSTRING ""
|
tomwalters@0
|
57
|
tomwalters@0
|
58 #define MAX_LINES_HEADER 100 /* 69 is what .sai are */
|
tomwalters@0
|
59 #define MAX_LINE_LENGTH 80 /* of a header : width of an xterm */
|
tomwalters@0
|
60
|
tomwalters@0
|
61 #define UNSET 9 /* nextevents definitions */
|
tomwalters@0
|
62 #define RIGHTZERO 10 /* ditto */
|
tomwalters@0
|
63 #define LEFTZERO 11 /* ditto */
|
tomwalters@0
|
64 #define MINIMUM 12 /* ditto */
|
tomwalters@0
|
65 #define END_OF_WIDTH 13 /* ditto */
|
tomwalters@0
|
66
|
tomwalters@0
|
67 #define RIGHTEDGE 21 /* tent definitions */
|
tomwalters@0
|
68 #define LEFTEDGE 22 /* ditto */
|
tomwalters@0
|
69 #define INSIDE 23 /* ditto */
|
tomwalters@0
|
70 #define NOISE 24 /* ditto */
|
tomwalters@0
|
71 #define FIGURE 25 /* ditto */
|
tomwalters@0
|
72 #define TRIGGER 26 /* ditto */
|
tomwalters@0
|
73
|
tomwalters@0
|
74 #define POINT 1 /* output format definitions */
|
tomwalters@0
|
75 #define PEAK 2 /* ditto */
|
tomwalters@0
|
76 #define INTEGRAL 3 /* ditto */
|
tomwalters@0
|
77 #define TENT 4 /* ditto */
|
tomwalters@0
|
78 #define HALF_DOME 5 /* ditto */
|
tomwalters@0
|
79
|
tomwalters@0
|
80
|
tomwalters@0
|
81 #define FIGURE_EXT "figure.sai" /* filename extensions */
|
tomwalters@0
|
82 #define GROUND_EXT "ground.sai" /* ditto */
|
tomwalters@0
|
83 #define OUTPUT_EXT ".sai" /* ditto */
|
tomwalters@0
|
84 #define INPUT_EXT ".sai" /* ditto */
|
tomwalters@0
|
85 #define OUTPUTGROUNDFN "ground.sai" /* default file for ground */
|
tomwalters@0
|
86
|
tomwalters@0
|
87 #define OFF 0
|
tomwalters@0
|
88 #define ON 1
|
tomwalters@0
|
89
|
tomwalters@0
|
90 #define READ 31 /* used in fopen as "rb" */
|
tomwalters@0
|
91 #define WRITE 32 /* used in fopen as "wb" */
|
tomwalters@0
|
92
|
tomwalters@0
|
93 #define SINGLECHANNEL 9999 /* used in copytoouput to indicate
|
tomwalters@0
|
94 that the arrays by channel
|
tomwalters@0
|
95 DON"T exist */
|
tomwalters@0
|
96 #define THREE 3
|
tomwalters@0
|
97 #define FIVE 5
|
tomwalters@0
|
98
|
tomwalters@0
|
99 #define GLACIERVALUE 0.5
|
tomwalters@0
|
100
|
tomwalters@0
|
101 #define NEW_PWIDTH 0
|
tomwalters@0
|
102 #define NEW_NWIDTH 15
|
tomwalters@0
|
103 #define PWIDTH 20 /* used in napgraph: default */
|
tomwalters@0
|
104 #define NWIDTH 5 /* used in napgraph: default.
|
tomwalters@0
|
105 * The minus is added later.*/
|
tomwalters@0
|
106
|
tomwalters@0
|
107 #define NORMAL_WEIGHTING 41
|
tomwalters@0
|
108 #define LOG_WEIGHTING 42
|
tomwalters@0
|
109
|
tomwalters@0
|
110
|
tomwalters@0
|
111
|
tomwalters@0
|
112 /*---------------------------------------------------------------------------*/
|
tomwalters@0
|
113 /*---------------------------------------------------------------------------*/
|
tomwalters@0
|
114
|
tomwalters@0
|
115
|
tomwalters@0
|
116
|
tomwalters@0
|
117 struct Peak {
|
tomwalters@0
|
118 int sample; /* where the triangulation point is */
|
tomwalters@0
|
119 int mag; /* its height */
|
tomwalters@0
|
120 int tent; /* whether its been included in figure or ground,
|
tomwalters@0
|
121 * or not : see 'tent defs' above*/
|
tomwalters@0
|
122 double weight;
|
tomwalters@0
|
123 };
|
tomwalters@0
|
124
|
tomwalters@0
|
125 struct NextEvent {
|
tomwalters@0
|
126 int sample; /* the nextevent of a peak: because findpeaksreverse()
|
tomwalters@0
|
127 * goes right -> left, this is LEFT*/
|
tomwalters@0
|
128 int type; /* the type of that event: MINIMUM, RIGHTZERO,
|
tomwalters@0
|
129 * LEFTZERO, END_OF_WIDTH */
|
tomwalters@0
|
130 int mag; /* its height */
|
tomwalters@0
|
131 };
|
tomwalters@0
|
132
|
tomwalters@0
|
133
|
tomwalters@0
|
134 /* The End ---------------------------------------------------------------*/
|
tomwalters@0
|
135 /*------------------------------------------------------------------------*/
|