⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 segy.h

📁 segy读取原码
💻 H
字号:
#define SEGY_EBCDIC_HDR_SIZE 3200#define SEGY_REEL_HDR_SIZE 400#define SEGY_TRACE_HDR_SIZE 240#ifndef UINT8_T#define UINT8_Ttypedef unsigned char 	uint8_t;#endif#ifndef INT16_T#define INT16_T typedef short	int16_t;#endif#ifndef INT32_T#define INT32_T typedef long int32_T;#endiftypedef struct segy_ebcdic_hdr {	uint8_t buffer[SEGY_EBCDIC_HDR_SIZE];} segy_ebcdic_hdr;typedef struct segy_reel_hdr {	int32_T job_id_number;	int32_T line_number;	int32_T reel_number;	int16_t traces_per_record;	int16_t aux_traces_per_record;	int16_t sample_data_interval_ms;	int16_t original_data_interval_ms;	int16_t samples_per_trace;	int16_t original_samples_per_trace;	int16_t data_sample_format_code;	int16_t CDP_fold;	int16_t trace_sorting_code;	int16_t vertical_sum_code;	int16_t sweep_frequency_start_hz;	int16_t sweep_frequency_end_hz;	int16_t sweep_length_ms;	int16_t sweep_type_code;	int16_t trace_number_of_sweep_channel;	int16_t sweep_trace_taper_length_start_ms;	int16_t sweep_trace_taper_length_end_ms;	int16_t taper_type_code;	int16_t correlated_data_traces_flag;	int16_t binary_gain_recovered_flag;	int16_t amplitude_recovery_method_code;	int16_t measurement_system;	int16_t impulse_signal_polarity;	int16_t vibratory_polarity_code;	uint8_t buffer[340]; // 12 bytes + 12 bytes + 36 bytes + 340 buffer bytes = REEL_HDR_SIZE} segy_reel_hdr;typedef struct segy_trace_hdr {	int32_T trace_sequence_number_within_line;	int32_T trace_sequence_number_within_reel;	int32_T original_field_record_number;	int32_T trace_sequence_number_within_original_field_record;	int32_T energy_source_point_number;	int32_T cdp_ensemble_number;	int32_T trace_sequence_number_within_cdp_ensemble;	int16_t trace_identification_code;	int16_t number_of_vertically_summed_traces_yielding_this_trace;	int16_t number_of_horizontally_stacked_traced_yielding_this_trace;	int16_t data_use;	int32_T distance_from_source_point_to_receiver_group;	int32_T receiver_group_elevation;	int32_T surface_elevation_at_source;	int32_T source_depth_below_surface;	int32_T datum_elevation_at_receiver_group;	int32_T datum_elevation_at_source;	int32_T water_depth_at_source;	int32_T water_depth_at_receiver_group;	int16_t scalar_for_elevations_and_depths;	int16_t scalar_for_coordinates;	int32_T x_source_coordinate;	int32_T y_source_coordinate;	int32_T x_receiver_group_coordinate;	int32_T y_receiver_group_coordinate;	int16_t coordinate_units;	 	int16_t weathering_velocity;	int16_t subweathering_velocity;	int16_t uphole_time_at_source;	int16_t uphole_time_at_group;	int16_t source_static_correction;	int16_t group_static_correction;	int16_t total_static_applied;	int16_t lag_time_a;	int16_t lag_time_b;	int16_t delay_according_time;	int16_t brute_time_start;	int16_t mute_time_end;	int16_t samples_in_this_trace;	int16_t sample_intervall;	int16_t gain_type_instruments;	uint8_t buffer[120];} segy_trace_hdr;typedef struct SegyDim3s{    float XDIM,YDIM,ZDIM;} SegyDim3s;class SegyReader{public:	static float * getSegyDataAndChar(SegyDim3s &dim,char *fileName);};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -