// copyright 2013-2020 BAE Systems, Thales Group, Object Management Group Inc; 2013 Selex ES, DSTO, Atlas Elektronik, EADS Deutschland GmbH #ifndef ORGOMGC4ISERVICE_INTERFACESSENSOR_SERVICESSENSOR_PERFORMANCEPROVIDE_JAMMER_ASSESSMENTDEFVAR #define ORGOMGC4ISERVICE_INTERFACESSENSOR_SERVICESSENSOR_PERFORMANCEPROVIDE_JAMMER_ASSESSMENTDEFVAR #include "Common_Types.idl" #include "Requests.idl" #include "Sensor_Performance.idl" module org { module omg { module c4i { module Service_Interfaces { module Sensor_Services { module Sensor_Performance { module Provide_Jammer_Assessment { // struct holding keys for class jammer_assessment_response_type. struct jammer_assessment_response_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; }; // This interface describes the process whereby the subsystem provides a periodic // assessment of the effects of actual jamming on the detection and tracking // performance of the subsystem. The actual subsystem performance vs the nominal // (see Provide Nominal Performance) shall be reported so that this data is current // and real-time. This should include the effects on (spatial) coverage caused by // any jamming. The impact on frequencies used e.g. operating band limitations is // dealt with in Provide Interference Reports // Mastership is not required. // The radar need not be radiating in the ONLINE state but shall at least be // receiving. The subsystem VOI (volume of interest) or other filter mechanisms // might be supplied in a request to the subsystem. // The kind of information which could be provided in the returned assessment, // depending on any jamming mitigation strategy (frequency agility, moving target // indication, low side-lobe levels, main beam or side-lobe cancellation, side-lobe // blanking etc.) might then include: // struct jammer_assessment_response_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::Sensor_Domain::Sensor_Performance::performance_assessment_report_type report; }; #ifndef DDS_XTYPES #pragma keylist jammer_assessment_response_type request_id subsystem_id #endif // struct holding keys for class jammer_assessment_request_type. struct jammer_assessment_request_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; }; struct jammer_assessment_request_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::Sensor_Domain::Sensor_Performance::performance_assessment_parameters_type jammer_assessment_request; }; #ifndef DDS_XTYPES #pragma keylist jammer_assessment_request_type request_id subsystem_id #endif }; }; }; }; }; }; }; #endif