#define SEGY_HEAD_SIZE 240 /* segy header size in bytes */ struct segy /* standard SEG-Y trace */ { int trseql; /* 0: trace sequence no. in line */ int trseqr; /* 4: trace sequence no. in reel */ int frecno; /* 8: original field record no. */ int trnof; /* 12: trace no. within original field rec */ int sp; /* 16: energy source point number */ int cdpensno; /* 20: CDP ensemble no. */ int enstrno; /* 24: trace number within CDP ensemble */ short trid; /* 28: trace id code */ short vsumno; /* 30: no. of vertically summed traces in trace */ short hsumno; /* 32: no. of horizontally summed traces in trace */ short use; /* 34: data use */ int offset; /* 36: distance from source point to receiver */ int gz; /* 40: elevation of receiver group */ int szsurf; /* 44: surface elevation at source */ int sdepth; /* 48: source depth below surface */ int gdatz; /* 52: datum elevation at receiver group */ int sdatz; /* 56: datum elevation at source */ int swatdep; /* 50: water depth at source */ int gwatdep; /* 54: water depth at receiver group */ short lscaler; /* 58: elevation and depth scaler */ short coscaler; /* 60: coordinate scaler */ int sx; /* 62: x source coordinate */ int sy; /* 66: y source coordinate */ int gx; /* 70: x receiver group coordinate */ int gy; /* 74: y receiver group coordinate */ short counit; /* 78: coordinate units */ short vweath; /* weathering velocity */ short vsbweath; /* subweathering velocity */ short tus; /* uphole time at source */ short tug; /* uphole time at receiver group */ short dts; /* source static correction */ short dtg; /* receiver group static correction */ short dttotal; /* total static applied */ short tlA; /* lag time A */ short tlB; /* lag time B */ short delay; /* recording delay time */ short tmute0; /* mute time start */ short tmutef; /* mute time end */ short nt; /* no. of samples in trace */ short dt; /* sample interval in trace */ short gaintype; /* gain type of field instruments */ short kgain; /* instrument gain constant */ short gain0; /* instrument early or initial gain */ short correl; /* correlation switch */ short swf0; /* sweep frequency at start */ short swff; /* sweep frequency at end */ short swt; /* sweep length */ short swtype; /* sweep type */ short swtrtpt0; /* sweep trace taper length at start */ short swtrtptf; /* sweep trace taper length at end */ short swtaptype;/* sweep taper type */ short alff; /* alias filter frequency */ short alfsl; /* alias filter slope */ short nchff; /* notch filter frequency */ short nchfsl; /* notch filter slope */ short lcf; /* low cut frequency */ short hcf; /* high cut frequency */ short lcsl; /* low cut slope */ short hcsl; /* high cut slope */ short year; /* year data recorded */ short jday; /* day of year */ short hour; /* hour of day */ short minute; /* minute of hour */ short second; /* second of minute */ short tbasis; /* time basis code */ short trwt; /* trace weighting factor */ short rsw1gno; /* geophone group no. of roll switch pos. 1 */ short frtr1gno; /* grp. no. of trace 1 w/i orig. field rec. */ short frtrfgno; /* grp. no. of last trace w/i field rec. */ short gapsize; /* gap size */ short overtrav; /* overtravel assoc. w/ taper at line ends */ float fdt; /* floating residual static correction */ float fdts; /* floating residual shot static */ float fdtg; /* floating residual receiver static */ float fdtd; /* floating residual depthpoint static */ float fdtmo; /* floating residual moveout static */ char unas[40]; /* unassigned */ };