// copyright 2013-2020 BAE Systems, Thales Group, Object Management Group Inc; 2013 Selex ES, DSTO, Atlas Elektronik, EADS Deutschland GmbH #ifndef ORGOMGC4ISERVICE_INTERFACESRADAR_SERVICESAIR_ENGAGEMENT_SUPPORTPROVIDE_PROJECTILE_POSITIONAL_INFORMATIONDEFVAR #define ORGOMGC4ISERVICE_INTERFACESRADAR_SERVICESAIR_ENGAGEMENT_SUPPORTPROVIDE_PROJECTILE_POSITIONAL_INFORMATIONDEFVAR #include "Common_Types.idl" #include "Requests.idl" #include "Air_Engagement_Support.idl" module org { module omg { module c4i { module Service_Interfaces { module Radar_Services { module Air_Engagement_Support { module Provide_Projectile_Positional_Information { // struct holding keys for class report_miss_indication_type. struct report_miss_indication_key_type { // Indicates which subsystem published the data or is intended to read it as a // subscriber org::omg::c4i::Domain_Model::Common_Types::subsystem_id_type subsystem_id; org::omg::c4i::Domain_Model::Common_Types::Requests::request_id_type request_id; }; // Via this message, the subsystem reports to the CMS the miss indication. // Fire control radars suitable for Close-In-Weapon-Systems need the capability to // observe the projectiles in flight, to measure at which distance they pass the // target so that related shot corrections for the gun may be calculated, // automatically. The measured distance in azimuth and elevation is called miss // indication in the following. // This capability may be available in a non-close-in-weapon-system environment, // too. It may also be available for phased-array radars. // Mastership of the subsystem must not have any impact upon the miss indication // capability. // See also service 'Process Target Designation'. struct report_miss_indication_type { org::omg::c4i::Domain_Model::Radar_Domain::Air_Engagement_Support::miss_indication_data_type MissIndicationData; // Indicates which subsystem published the data or is intended to read it as a // subscriber #ifdef DDS_XTYPES @key org::omg::c4i::Domain_Model::Common_Types::subsystem_id_type subsystem_id; #else org::omg::c4i::Domain_Model::Common_Types::subsystem_id_type subsystem_id; #endif #ifdef DDS_XTYPES @key org::omg::c4i::Domain_Model::Common_Types::Requests::request_id_type request_id; #else org::omg::c4i::Domain_Model::Common_Types::Requests::request_id_type request_id; #endif }; #ifndef DDS_XTYPES #pragma keylist report_miss_indication_type subsystem_id request_id #endif // struct holding keys for class request_miss_indication_type. struct request_miss_indication_key_type { org::omg::c4i::Domain_Model::Common_Types::Requests::request_id_type request_id; // Indicates which subsystem published the data or is intended to read it as a // subscriber org::omg::c4i::Domain_Model::Common_Types::subsystem_id_type subsystem_id; }; // Request the subsystem to report a miss indication. struct request_miss_indication_type { #ifdef DDS_XTYPES @key org::omg::c4i::Domain_Model::Common_Types::Requests::request_id_type request_id; #else org::omg::c4i::Domain_Model::Common_Types::Requests::request_id_type request_id; #endif // Indicates which subsystem published the data or is intended to read it as a // subscriber #ifdef DDS_XTYPES @key org::omg::c4i::Domain_Model::Common_Types::subsystem_id_type subsystem_id; #else org::omg::c4i::Domain_Model::Common_Types::subsystem_id_type subsystem_id; #endif org::omg::c4i::Domain_Model::Radar_Domain::Air_Engagement_Support::expected_hit_data_type ExpectedHitData; }; #ifndef DDS_XTYPES #pragma keylist request_miss_indication_type request_id subsystem_id #endif }; }; }; }; }; }; }; #endif