/* * 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_ */