www.pudn.com > RADAR-ALARM.rar > RadarAlert.h, change:2011-08-07,size:1523b


#pragma once 
#include "SADataStruct.h" 
#include <vector> 
 
using namespace std; 
 
struct AlertSection 
{ 
	int Azi; 
	int StartBin; 
	int EndBin; 
	int AreaIndex; 
	bool areaflag; 
}; 
 
 
struct AreaInfo 
{ 
	int MaxAzi; 
	int MinAzi; 
	int MaxBin; 
	int MinBin; 
	int Area; 
	int index; 
}; 
 
class CRadarAlert 
{ 
public: 
	CRadarAlert(void); 
	~CRadarAlert(void); 
	bool m_BinContinualFlag; 
	bool m_AziContinualFlag; 
 
	float GetValue(int El,int Azi,int Bin); 
	// 读取的数据径向最大库数 
	int m_MaxBinNum; 
	// 读取的数据最大仰角数 
	int m_MaxElNum; 
	// 数据指针 
	float* m_Value; 
	//报警门限值 
	int m_Threshold; 
	// 每根径向上报警需要的库数 
	int m_AlertBinNum; 
	// 报警的径向速度数量 
	int m_AlertAziNum; 
	// 获取大于预警门限的区间 
	void GetAlertSection(int AlertLenth, int Threshold,int Elindex); 
	vector<AlertSection> m_vect; 
	vector<AreaInfo> m_vectarea; 
	void test(void); 
	// 两个警告线段是否有重合 
	bool Match(int startbin1, int endbin1, int startbin2, int endbin2); 
	// 获得报警区域 
	void GetAlertArea(); 
	int aziandnum[720]; 
	void CalibrationA(int areathreshold, int azithreshold); 
	int m_AreaThreshold; 
	// 获取报警总面积 
	int GetTotalArea(void); 
	// 总面积报警 
	bool AlertTotalArea(int ThresholdArea); 
	// 报警总过程 
	void AlertProcess(void); 
	// 预警的仰角序号 
	int m_ElIndex; 
	// 总面积报警 
	bool m_TotalAreaAlertFlag; 
	// 总的报警面积 
	int m_AlertTotalArea; 
	int m_AlertRangeBin; 
	CString m_AlertAreaFileName; 
	// 单个区域报警面积 
	int m_SingleAreaThreshold; 
};