1 | |
---|
2 | /* file SHCONST.H |
---|
3 | * ========= |
---|
4 | * |
---|
5 | * $Revision: 159 $, $Date: 2011-02-10 15:46:45 +0100 (Do, 10 Feb 2011) $ |
---|
6 | * |
---|
7 | * constants of seismhandler program |
---|
8 | * K. Stammler, 22-MAY-91 |
---|
9 | */ |
---|
10 | |
---|
11 | |
---|
12 | /* |
---|
13 | * |
---|
14 | * SeismicHandler, seismic analysis software |
---|
15 | * Copyright (C) 1996, Klaus Stammler, Federal Institute for Geosciences |
---|
16 | * and Natural Resources (BGR), Germany |
---|
17 | * |
---|
18 | * This program is free software; you can redistribute it and/or modify |
---|
19 | * it under the terms of the GNU General Public License as published by |
---|
20 | * the Free Software Foundation; either version 2 of the License, or |
---|
21 | * (at your option) any later version. |
---|
22 | * |
---|
23 | * This program is distributed in the hope that it will be useful, |
---|
24 | * but WITHOUT ANY WARRANTY; without even the implied warranty of |
---|
25 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
---|
26 | * GNU General Public License for more details. |
---|
27 | * |
---|
28 | * You should have received a copy of the GNU General Public License |
---|
29 | * along with this program; if not, write to the Free Software |
---|
30 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
---|
31 | * |
---|
32 | */ |
---|
33 | |
---|
34 | |
---|
35 | #ifndef __SHCONST |
---|
36 | #define __SHCONST |
---|
37 | |
---|
38 | #define SHC_VERSION "5.5 February-2011" |
---|
39 | /* version number */ |
---|
40 | #define TW 1 |
---|
41 | /* text window */ |
---|
42 | #define GW 2 |
---|
43 | /* graphics window */ |
---|
44 | #ifdef BC_SUN |
---|
45 | #define SHC_FILE_PREFIX "SH_" |
---|
46 | #else |
---|
47 | #define SHC_FILE_PREFIX "SH$" |
---|
48 | #endif |
---|
49 | /* file prefix of all SeismicHandler files */ |
---|
50 | #define SHC_FILE_PREFIX_LENGTH 3 |
---|
51 | /* length of file prefix */ |
---|
52 | #define SHC_DE_TEXT ".STX" |
---|
53 | /* default extension of echo files */ |
---|
54 | #define SHC_DE_HELP ".HLP" |
---|
55 | /* default extension of help files */ |
---|
56 | #define SHC_DE_SAVE ".SSV" |
---|
57 | /* default extension of save files */ |
---|
58 | #define SHC_DE_CMD ".SHC" |
---|
59 | /* default command file extension */ |
---|
60 | #define SHC_DE_VEL ".VEL" |
---|
61 | /* default velocity file extension */ |
---|
62 | #define SHC_DE_ERROR ".MSG" |
---|
63 | /* default extension of error message files */ |
---|
64 | #define SHC_DE_RFILT ".FLR" |
---|
65 | /* default extension for recursive filter files */ |
---|
66 | #define SHC_DE_FFILT ".FLF" |
---|
67 | /* default extension for FFT filter files */ |
---|
68 | #define SHC_DE_DFILT ".FLT" |
---|
69 | /* default extension for tabulated filter files */ |
---|
70 | #define SHC_DE_CURVE ".CRV" |
---|
71 | /* default extension of curve files */ |
---|
72 | #define SHC_CHWRITE '&' |
---|
73 | /* write access character */ |
---|
74 | #define SHC_SYMGLB 1 |
---|
75 | /* global symbol set number */ |
---|
76 | #define SHC_SYMLOC 0 |
---|
77 | /* local symbol set number */ |
---|
78 | #define SHC_ILISTLTH 650 |
---|
79 | /* max length of integer lists */ |
---|
80 | #define SHC_CRSR '*' |
---|
81 | /* cursor input */ |
---|
82 | #define SHC_ABORTCH 'X' |
---|
83 | /* cursor input aborted */ |
---|
84 | #define SHC_EXITCH 'E' |
---|
85 | /* cursor input end */ |
---|
86 | #define SHC_TIMEDEFAULT "1-JUL-1970_12:00:00.00" |
---|
87 | /* trace start time default */ |
---|
88 | #define SHC_PI 3.14159265358979323846 |
---|
89 | /* pi */ |
---|
90 | #define SHC_EPSILON 1.0e-25 |
---|
91 | /* epsilon value */ |
---|
92 | #define SHC_RAD_TO_DEG (180.0/SHC_PI) |
---|
93 | /* conversion factor from radians to degrees */ |
---|
94 | #define SHC_DEG_TO_KM 111.19 |
---|
95 | /* conversion factor degrees to km */ |
---|
96 | /* #define SHC_CURRDSP -1 */ |
---|
97 | /* take trace from current display list */ |
---|
98 | /* #define SHC_HIDDENLIST -2 */ |
---|
99 | /* take trace from hidden list */ |
---|
100 | #define SHC_MAXWDW 7 |
---|
101 | /* maximum number of windows (same as in gcusrdef.h) */ |
---|
102 | #define SHC_WDWMASK 7 |
---|
103 | /* window mask */ |
---|
104 | #define SHC_MAXDLN (SHC_MAXWDW+3) |
---|
105 | /* maximum display list number */ |
---|
106 | #define SHC_CARRIAGE_RETURN (char)13 |
---|
107 | /* carriage return */ |
---|
108 | #define SHC_CHATTXT " !i:" |
---|
109 | /* intro string for CHATTY output line */ |
---|
110 | #define SHC_STATNAMELTH 11 |
---|
111 | /* maximum length of station name */ |
---|
112 | |
---|
113 | /* style numbers */ |
---|
114 | #define SHC_TITLESTYLE 8 |
---|
115 | /* title style */ |
---|
116 | #define SHC_TRCINFOSTYLE 9 |
---|
117 | /* style of trace info text */ |
---|
118 | #define SHC_ZEROTRCSTYLE 8 |
---|
119 | /* style of zero trace lines */ |
---|
120 | #define SHC_MARKSTYLE 6 |
---|
121 | /* style of markers */ |
---|
122 | #define SHC_PMSTYLE 5 |
---|
123 | /* particle motion style */ |
---|
124 | #define SHC_TIMEAXISSTYLE 7 |
---|
125 | /* style block of time axis */ |
---|
126 | |
---|
127 | /* #define SHC_HCFILE_WITH_RANDOM */ |
---|
128 | |
---|
129 | /* normalization types */ |
---|
130 | #define SHC_N_SF 0 |
---|
131 | #define SHC_N_SW 1 |
---|
132 | #define SHC_N_AF 2 |
---|
133 | #define SHC_N_AW 3 |
---|
134 | #define SHC_N_LF 4 |
---|
135 | #define SHC_N_LW 5 |
---|
136 | #define SHC_N_C 6 |
---|
137 | |
---|
138 | /* rotation types */ |
---|
139 | #define SHC_ROT_ZNE_TO_LQT 1 |
---|
140 | #define SHC_ROT_ZNE_TO_UVW 2 |
---|
141 | #define SHC_ROT_UVW_TO_ZNE 3 |
---|
142 | |
---|
143 | #define SHC_FILELTH 179 |
---|
144 | /* maximum length of filenames */ |
---|
145 | |
---|
146 | /* flags */ |
---|
147 | typedef int SHFLAGS; |
---|
148 | #define SHF_LOGCMD 0x1 |
---|
149 | #define SHF_ECHO 0x2 |
---|
150 | #define SHF_CAPCNV 0x4 |
---|
151 | #define SHF_STEP 0x8 |
---|
152 | #define SHF_VERIFY 0x10 |
---|
153 | #define SHF_CMDERRSTOP 0x20 |
---|
154 | #define SHF_SHERRSTOP 0x40 |
---|
155 | #define SHF_NOERRMSG 0x80 |
---|
156 | #define SHF_CHATTY 0x100 |
---|
157 | #define SHF_STARTUP 0x200 |
---|
158 | |
---|
159 | |
---|
160 | /* =========================== */ |
---|
161 | /* definitions of global types */ |
---|
162 | /* =========================== */ |
---|
163 | |
---|
164 | typedef float SAMPLE; /* data type of seismogram samples */ |
---|
165 | typedef float REAL; /* general floating point type */ |
---|
166 | /* typedef void TRACE; */ /* trace type (only used as pointer) */ |
---|
167 | #define TRACE void |
---|
168 | #define SHENTRY unsigned |
---|
169 | #define SHC_SAMPLEFMT "%e" |
---|
170 | #define SHC_REALFMT "%e" |
---|
171 | |
---|
172 | typedef struct sh_complex { |
---|
173 | REAL re; /* real part */ |
---|
174 | REAL im; /* imaginary part */ |
---|
175 | } COMPLEX; |
---|
176 | |
---|
177 | |
---|
178 | |
---|
179 | /* ---------------------------------------------------- */ |
---|
180 | /* the following type is used in the motif version only */ |
---|
181 | /* ---------------------------------------------------- */ |
---|
182 | |
---|
183 | |
---|
184 | #ifdef XXX |
---|
185 | |
---|
186 | typedef struct { |
---|
187 | float red; /* red fraction */ |
---|
188 | float green; /* green fraction */ |
---|
189 | float blue; /* blue fraction, all fractions are between 0 and 1 */ |
---|
190 | } SHT_COLOR; |
---|
191 | |
---|
192 | |
---|
193 | /* definition of structure for global parameter set */ |
---|
194 | typedef struct { |
---|
195 | char depth_phase_list[BC_LINELTH+1]; /* list of depth phases */ |
---|
196 | char theo_phase_list[BC_LINELTH+1]; /* list of theo. phases */ |
---|
197 | char diff_phase_list[BC_LINELTH+1]; /* list of diff. phases */ |
---|
198 | float close_phase_resol; /* close phase resolution in pixel */ |
---|
199 | int min_drag_box_width; /* minimum width of drag box in pixel */ |
---|
200 | char defpath_filter[BC_FILELTH+1]; /* default path for filters */ |
---|
201 | char defpath_events[BC_FILELTH+1]; /* def.path for event files */ |
---|
202 | char defpath_gse[BC_FILELTH+1]; /* def. path for GSE files */ |
---|
203 | char defpath_gse2[BC_FILELTH+1]; /* def. path for GSE2 files */ |
---|
204 | char defpath_ah[BC_FILELTH+1]; /* def. path for AH files */ |
---|
205 | char defpath_q[BC_FILELTH+1]; /* def. path for Q files */ |
---|
206 | char defpath_evid[BC_FILELTH+1]; /* path for event ID files */ |
---|
207 | char defpath_evtout[BC_FILELTH+1]; /* event info output path */ |
---|
208 | char defpath_data[BC_FILELTH+1]; /* def.path for SEED data */ |
---|
209 | BOOLEAN top_down_order; /* arrange trace from top to bottom */ |
---|
210 | long double_click_time; /* maximum time diff. of clicks in ms */ |
---|
211 | float trace_zoom_base; /* base of trace zoom formula */ |
---|
212 | float trace_zoom_exp; /* exponent factor of trace zoom formula */ |
---|
213 | SHT_COLOR color_mark; /* marker color */ |
---|
214 | SHT_COLOR color_theo; /* theoretical phase markers */ |
---|
215 | SHT_COLOR color_auto; /* automatically picked phase color */ |
---|
216 | SHT_COLOR color_crsr; /* cursor color */ |
---|
217 | char refstation[BC_SHORTSTRLTH+1]; /* reference station */ |
---|
218 | BOOLEAN autopick_first; /* take first or bigger amplitude */ |
---|
219 | char edit_cmd[BC_LINELTH+1]; /* call to system text editor */ |
---|
220 | float calib_wdw_width; /* width of calibration window */ |
---|
221 | float calib_wdw_height; /* height of calibration window */ |
---|
222 | float calib_azimuth_grid; /* azimuth grid in calib diagram */ |
---|
223 | float calib_slowness_grid; /* slowness grid in calib diagram */ |
---|
224 | BOOLEAN auto_scaling; /* scale traces on display automatically */ |
---|
225 | BOOLEAN use_rec_filters; /* use recursive filters instead of FFT */ |
---|
226 | char analyst[BC_SHORTSTRLTH+1]; /* analyst's abbreviation */ |
---|
227 | BOOLEAN prompt_analyst; /* prompt for analyst's name */ |
---|
228 | char motif_log[BC_FILELTH+1]; /* motif action log file */ |
---|
229 | float phase_ampl_diff; /* max. seconds between phase and ampl. */ |
---|
230 | BOOLEAN reverse_xors; /* reverse back/foreground on XOR's */ |
---|
231 | int x_max_drawlth; /* max. no of samples in one XDrawLines */ |
---|
232 | int default_quality; /* default phase quality value */ |
---|
233 | int drag_box_rubber_val; /* no of pixels to enable rubber box */ |
---|
234 | char default_filter[BC_FILELTH+1]; /* def. filter after read */ |
---|
235 | int default_phase_type; /* default phase type, like tele */ |
---|
236 | int default_phase_flags; /* default phase flags */ |
---|
237 | int default_depth_type; /* default depth type */ |
---|
238 | float default_depth; /* default depth in km */ |
---|
239 | int default_loc_quality; /* default location quality */ |
---|
240 | int max_cursor_form; /* maximum cursor form ID */ |
---|
241 | char event_check_proc[BC_FILELTH+1]; /* routine to check event */ |
---|
242 | char screendump_proc[BC_FILELTH+1]; /* screendump routine */ |
---|
243 | char evtview_proc[BC_FILELTH+1]; /* evt result view prcoedure */ |
---|
244 | char remreqhost[BC_SHORTSTRLTH+1]; /* request remote host */ |
---|
245 | BOOLEAN full_phase_names; /* display full phase names */ |
---|
246 | char default_source[BC_SHORTSTRLTH+1]; /* default info source */ |
---|
247 | float move_wdw_step; /* step size of move window command */ |
---|
248 | int top_margin; /* top margin of display in pixel */ |
---|
249 | char auto_phase[cBcShortStrLth+1]; /* name of autopick phase */ |
---|
250 | int draw_area_height; /* height of drawing area in pixel */ |
---|
251 | int draw_area_width; /* width of drawing area in pixel */ |
---|
252 | float area_zoom_base; /* drawing area resize, base */ |
---|
253 | float area_zoom_exp; /* drawing area resize, exponent */ |
---|
254 | char reformat_proc[cBcFileLth+1]; /* routine to reformat data */ |
---|
255 | char final_proc[cBcFileLth+1];/* postprocessing 'final params' */ |
---|
256 | BOOLEAN own_accelerators; /* use own accelerator code */ |
---|
257 | char filter_type; /* filter type, replaces use_rec_filters */ |
---|
258 | } SHT_GLOBAL_SET; |
---|
259 | |
---|
260 | #endif |
---|
261 | |
---|
262 | |
---|
263 | #endif /* __SHCONST */ |
---|