Files
radar_data_process/data_process_class_dll/struct.h
T
2026-06-26 17:17:18 +08:00

153 lines
4.5 KiB
C++

#ifndef STRUCT_H
#define STRUCT_H
#pragma once
#include <QVector>
using namespace std;
/********************************* 数据处理结构体 **********************************************/
// 点迹数据结构
struct PointRecv
{
double Range; //径向距离
double Azimuth; //方位 (弧度)
double Velocity ; //速度
double Amplitude ; //幅度
double Height; //高度
double snr; //信噪比
double RCS; //目标RCS
int CPI_Time; //CPI时间
int Point_index; //点迹号 1~50
int Point_Sum; //点迹总数
int Use_Flag; //点迹使用标志 1使用 0未使用
int beam_index; //波位号
int PRF_index; //PRF号
int Freq_index; //频点
int track_mode; //TAS 1 TWS0
int point_section_asso; //点迹区
int pitch_num; // 俯仰波位号
float speed_dim[129]; // 目标的十字星数据,目标点速度维129个点
float range_dim[8]; // 目标的十字星数据,目标点距离维8个点
};
// 可靠航迹数据结构
struct Trust_Track
{
int Track_Index; //航迹号
double Amplitude; //幅度
double Height; //高度
int T_track; //航迹时间
int Track_Sum; //航迹总数
int Point_Index; //该航迹上的第几个点
int Track_Mode; //跟踪模式
int Track_Update_Flag; //航迹更新标志 1已更新/0未更新
int Extrapolate_round; //航迹持续外推时间
int point_flag; //是否实点 1实点 0外推
int approach_flag; //接近标志 1接近 0远离
int manual_delete_flag; //手动航迹删除
int manual_tracking_flag; //手动TAS
int associate_point_number; //关联的点数
int Target_Type; //目标类型 搜索目标 低空目标 地面目标
int Track_section_idx; //航迹区号
QVector <double> Hight_smooth; //高度平滑
double range_point; //关联上的点信息(距离、方位、俯仰)
double azi_point;
double elev_point;
double vr_point;
double prf_point;
int point_type; //TWS TAS
double snr_point; //信噪比
double RCS;
int pitch_num; // 俯仰波位号
float speed_dim[129]; // 目标的十字星数据,目标点速度维129个点
float range_dim[8]; // 目标的十字星数据,目标点距离维8个点
double X[6]; //IMM
double P[6][6];
double X1[6];
double X2[6];
double X3[6];
double P1[6][6];
double P2[6][6];
double P3[6][6];
double u[3];
};
//临时航迹结构体
struct Temp_track
{
double X[4]; //状态
double P[4][4]; //协方差
double r; //距离
double azi; //方位
double vr; //径向速度
double height; //高度
double snr; //信噪比
double RCS; //RCS
double Amp; //幅度
int T; //时间戳
double d; //关联上的点的d
int buff_round; //已缓存圈数
int Temp_track_section_idx; //临时航迹区号 与点迹区的划分相同
int asso_flag; //关联标志 已关联:1 未关联:0
int pitch_num; // 俯仰波位号
float speed_dim[129]; // 目标的十字星数据,目标点速度维129个点
float range_dim[8]; // 目标的十字星数据,目标点距离维8个点
};
// TAS跟踪目标结构体
struct Tracking_Target
{
int Index; //目标批号
int empty_flag; //是否为空标志位 1非空 0空
};
//引导跟踪目标结构体
struct Direct_Tracking_Target
{
int ID;
double Azi;
double Elev;
double Range;
int empty_flag; //是否为空标志位 1非空 0空
// int track_init_flag; //是否已经建航 1是 0否
};
#endif // STRUCT_H