// copyright 2013-2020 BAE Systems, Thales Group, Object Management Group Inc; 2013 Selex ES, DSTO, Atlas Elektronik, EADS Deutschland GmbH #ifndef ORGOMGC4ISERVICE_INTERFACESSENSOR_SERVICESSENSOR_CONTROLDEFINE_TEST_TARGET_SCENARIODEFVAR #define ORGOMGC4ISERVICE_INTERFACESSENSOR_SERVICESSENSOR_CONTROLDEFINE_TEST_TARGET_SCENARIODEFVAR #include "Common_Types.idl" #include "Requests.idl" #include "Sensor_Control.idl" module org { module omg { module c4i { module Service_Interfaces { module Sensor_Services { module Sensor_Control { // This package contains interfaces for the Define Test Target Scenario service. module Define_Test_Target_Scenario { // struct holding keys for class test_target_scenario_setting_type. struct test_target_scenario_setting_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; }; // Method used by the sensor to return the identification number of the modified or // created test target scenario. // This specifies the interactions for defining and modifying a test target // scenario. A Test Target scenario consists of a number of Test Targets to be // generated according to their characteristics (positions, motion law, generation // parameters) with the purpose of producing stimuli devoted to the execution of an // internal functional test of the sensor. // A number of Test Target scenarios may be maintained in a sensor internal Test // Targets scenarios database, where each scenario is identified by a unique // identification number. Write accesses to this database shall rejected if the // sensor Mastership is not actually assigned to CMS, but the possession of the // sensor Mastership is not required for executing read accesses. // The generation of the so defined Test Target scenarios may be activated as // specified in Control Test Target Facility. For the generation mechanism // see the interface Control Test Target Facility // // One or more Test Target scenarios may be maintained in a sensor internal Test // Targets scenarios database, where each scenario is identified by an unique // identification number. The number of available Test Target scenarios is accessed // by Manage subsystem parameters. // // Depending on the sensor type and its capabilities, a Test Target scenario may // be constituted by: // a) a number of independent targets, with each target having own characteristic // parameters; so the scenario is defined by: // // and for each target // // b) a number of targets distributed in a defined area/volume and having the same // common parameters, so the scenario is defined by: // // // // // Target parameters define: // a. the target motion type, with the relevant motion parameters // b. the target generation parameters, such as injection type (internal / // external), attenuation law (constant / variable-with-range), doppler type (0 / // PRF/2). struct test_target_scenario_setting_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_Control::test_target_scenario_id_type test_target_scenario_id; }; #ifndef DDS_XTYPES #pragma keylist test_target_scenario_setting_type request_id subsystem_id #endif // struct holding keys for class test_target_scenario_setting_all_feature_type. struct test_target_scenario_setting_all_feature_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; }; // Method used by the sensor to return the required test target scenario with its // parameters. // This specifies the interactions for defining and modifying a test target // scenario. A Test Target scenario consists of a number of Test Targets to be // generated according to their characteristics (positions, motion law, generation // parameters) with the purpose of producing stimuli devoted to the execution of an // internal functional test of the sensor. // A number of Test Target scenarios may be maintained in a sensor internal Test // Targets scenarios database, where each scenario is identified by a unique // identification number. Write accesses to this database shall rejected if the // sensor Mastership is not actually assigned to CMS, but the possession of the // sensor Mastership is not required for executing read accesses. // The generation of the so defined Test Target scenarios may be activated as // specified in Control Test Target Facility. For the generation mechanism // see the interface Control Test Target Facility // // One or more Test Target scenarios may be maintained in a sensor internal Test // Targets scenarios database, where each scenario is identified by an unique // identification number. The number of available Test Target scenarios is accessed // by Manage subsystem parameters. // // Depending on the sensor type and its capabilities, a Test Target scenario may // be constituted by: // a) a number of independent targets, with each target having own characteristic // parameters; so the scenario is defined by: // // and for each target // // b) a number of targets distributed in a defined area/volume and having the same // common parameters, so the scenario is defined by: // // // // // Target parameters define: // a. the target motion type, with the relevant motion parameters // b. the target generation parameters, such as injection type (internal / // external), attenuation law (constant / variable-with-range), doppler type (0 / // PRF/2). struct test_target_scenario_setting_all_feature_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_Control::test_target_scenario_type test_target_features; }; #ifndef DDS_XTYPES #pragma keylist test_target_scenario_setting_all_feature_type request_id subsystem_id #endif // struct holding keys for class read_test_target_scenario_type. struct read_test_target_scenario_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; }; // Method used by the CMS to send to the sensor a read request of a specified Test // Target scenario. // This is the Subsystem interface for defining test target scenarios. struct read_test_target_scenario_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_Control::test_target_scenario_id_type test_target_scenario_id; }; #ifndef DDS_XTYPES #pragma keylist read_test_target_scenario_type request_id subsystem_id #endif // struct holding keys for class write_test_target_scenario_type. struct write_test_target_scenario_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; }; // Method used by the CMS to send to the sensor a write request of a specified Test // Target scenario. // This is the Subsystem interface for defining test target scenarios. struct write_test_target_scenario_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_Control::test_target_scenario_type test_target_scenario; }; #ifndef DDS_XTYPES #pragma keylist write_test_target_scenario_type request_id subsystem_id #endif }; }; }; }; }; }; }; #endif