110 lines
1.3 KiB
C++
110 lines
1.3 KiB
C++
/*
|
|
* sfp_dsp_ris.h
|
|
*
|
|
*/
|
|
|
|
#ifndef SFP_DSP_RIS_H_
|
|
#define SFP_DSP_RIS_H_
|
|
|
|
#include "DspHeaderResults.h"
|
|
|
|
#include "sfp/sfp_types.h"
|
|
#include "sfp/sfp_helper.h"
|
|
|
|
namespace SFP_RIS
|
|
{
|
|
|
|
enum ris_chunk_tags_t
|
|
{
|
|
tag_sts_scenario='S',
|
|
tag_targets_db='T',
|
|
|
|
tag_header='H',
|
|
};
|
|
|
|
struct scenario_t
|
|
{
|
|
uint32_t timetag;
|
|
|
|
uint32_t flags;
|
|
uint32_t mode;
|
|
|
|
uint32_t spare_[8-2];
|
|
|
|
float platform_azimuth;
|
|
float vx;
|
|
float vy;
|
|
float vz;
|
|
float baro_altitude;
|
|
|
|
float true_heading;
|
|
float latitude;
|
|
float longitude;
|
|
|
|
float ant_nav_az;
|
|
float ant_nav_el;
|
|
|
|
uint32_t spare[16-9];
|
|
};
|
|
|
|
struct target_status_t
|
|
{
|
|
uint32_t flags;
|
|
|
|
float heading;
|
|
|
|
float x;
|
|
float y;
|
|
float z;
|
|
|
|
// float vx;
|
|
// float vy;
|
|
// float vz;
|
|
|
|
uint32_t spare[8-5];
|
|
|
|
};
|
|
|
|
enum { k_max_tgt=32};
|
|
|
|
struct target_db_t
|
|
{
|
|
uint32_t flags;
|
|
target_status_t tgt[k_max_tgt];
|
|
};
|
|
|
|
struct status_payload_t
|
|
{
|
|
SFP::data_tag_t scenario_tag;
|
|
scenario_t scenario;
|
|
|
|
SFP::data_tag_t target_tag;
|
|
target_db_t tgt;
|
|
};
|
|
|
|
struct status_message_t
|
|
{
|
|
SFP::frag_header_t header;
|
|
status_payload_t payload;
|
|
};
|
|
|
|
struct script_payload_t
|
|
{
|
|
SFP::data_tag_t ctrl_tag;
|
|
uint32_t ctrl[32];
|
|
|
|
SFP::data_tag_t script_tag;
|
|
uint8_t script[1024];
|
|
};
|
|
|
|
struct script_message_t
|
|
{
|
|
SFP::frag_header_t header;
|
|
script_payload_t payload;
|
|
};
|
|
|
|
}
|
|
|
|
|
|
#endif /* SFP_DSP_RIS_H_ */
|