// 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_PERFORMANCE_ASSESSMENTDEFVAR #define ORGOMGC4ISERVICE_INTERFACESSENSOR_SERVICESSENSOR_PERFORMANCEPROVIDE_PERFORMANCE_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_Performance_Assessment { // struct holding keys for class performance_assessment_response_type. struct performance_assessment_response_key_type { // The unique identifier for this assessment. This identifier is supplied by the CMS // when the assessment is requested. 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; }; // The subsystem responds to the previous performance assessment request with its // assessment of the requested aspect of actual performance. // This is incremental to Register Interest, which deals with the // subscription to subsystem functions and Provide Nominal Performance which // provides the subsystem nominal performance. This interface reports the real-time // performance of the available subsystem functions against the goals of the // mission. The reported performance is that currently being attained by the // subsystem subject to the current operating regime and environmental conditions, // including any clutter and jamming and taking account of any // mitigation/cancellation of such effects by the subsystem. // This interface is aimed at a subsystem such as an MFR radar. Information is // provided to the Command function allowing decisions to be made on the achieved // performance, which is often considerably different to the anticipated performance // level as reported through the Provide Nominal Performance Service. // The most basic example of performance would be reporting of the radar coverage, // in elevation, azimuth and range, for the current operating regime and // environmental conditions. This would take account of any clutter and jamming // present. Other examples might be that the actor requests the probability of // detection for a specified target type or perhaps the probability of correct // automatic classification of such a target within a specified range under current // environmental conditions N.B. if the radar is operating in an appropriate mode // then real-time clutter and/or jamming data might be available to the radar // subsystem. Otherwise the actor would have to supply any known data to the // subsystem for performance assessment (see Receive Encyclopaedic Data and Receive // Geographic Information). If no environmental data is specified then the design // performance would be reported. struct performance_assessment_response_type { // The unique identifier for this assessment. This identifier is supplied by the CMS // when the assessment is requested. #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 // The details of the assessment org::omg::c4i::Domain_Model::Sensor_Domain::Sensor_Performance::performance_assessment_report_type performance_assessment; }; #ifndef DDS_XTYPES #pragma keylist performance_assessment_response_type request_id subsystem_id #endif // struct holding keys for class performance_assessment_request_type. struct performance_assessment_request_key_type { // The unique identifier for this assessment. This identifier is contained in all // related replies from the sensor. 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; }; // The CMS requests assessment of actual performance of the subsystem. The aspect of // performance requested is a parameter of the request. // Subsystem interface for provision of current performance assessment. // Note that the coordinates are always polar for this service and that the origin // is always the sensor reference point as per the coordinates and positions // package. struct performance_assessment_request_type { // The unique identifier for this assessment. This identifier is contained in all // related replies from the sensor. #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 // Details of the assessment org::omg::c4i::Domain_Model::Sensor_Domain::Sensor_Performance::performance_assessment_parameters_type request; }; #ifndef DDS_XTYPES #pragma keylist performance_assessment_request_type request_id subsystem_id #endif }; }; }; }; }; }; }; #endif