Commit 364b5fa9 authored by julien.delange's avatar julien.delange
Browse files

begin implementation of service 12 of PUS

continue implementation of service 9



git-svn-id: https://tecsw.estec.esa.int/svn/taste/trunk/po-hi-c@1156 129961e7-ef38-4bb5-a8f7-c9a525a55882
parent 387dd769
...@@ -5,9 +5,12 @@ ...@@ -5,9 +5,12 @@
* *
* For more informations, please visit http://ocarina.enst.fr * For more informations, please visit http://ocarina.enst.fr
* *
* Copyright (C) 2010, European Space Agency * Copyright (C) 2010, European Space Agency.
*/ */
#ifndef __PO_HI_DRIVER_PUS_EVENTS_ACTION_H__
#define __PO_HI_DRIVER_PUS_EVENTS_ACTION_H__
/* /*
* This file defines the functions that implement the Event-Action service * This file defines the functions that implement the Event-Action service
* of the PUS protocol. This is denoted as service 19 in the PUS standard * of the PUS protocol. This is denoted as service 19 in the PUS standard
...@@ -139,6 +142,52 @@ int __po_hi_driver_pus_events_action_clear_detection_list (); ...@@ -139,6 +142,52 @@ int __po_hi_driver_pus_events_action_clear_detection_list ();
* Returns __PO_HI_SUCCESS is no error is reported. * Returns __PO_HI_SUCCESS is no error is reported.
*/ */
int __po_hi_driver_pus_events_action_events_enable (char* data,
int data_length);
/*
* Enable one or several events. The data argument is a raw package and
* the data_length argument is the length of the data.
*
* It corresponds to subservice 4
* (__PO_HI_DRIVER_PUS_EVENT_ACTION_SUBTYPE_ACTIONS_ENABLE)
*
* The data argument structure is like this :
* _____________________
* | N | APID | RID |
* ---------------------
* <------------->
* Repeated N times
* See page 178 of the ECSS standard to have a full description, section 21.3.4.
* The N value correspond to the number of events to enable.
* So, for each event, the data contain the APID and the Event
* Identifier that will be enable to trigger an action.
*
* Returns __PO_HI_SUCCESS if no error are raised.
*/
int __po_hi_driver_pus_events_action_events_disable (char* data,
int data_length);
/*
* Disable one or several events. The data argument is a raw package and
* the data_length argument is the length of the data.
*
* It corresponds to subservice 5
* (__PO_HI_DRIVER_PUS_EVENT_ACTION_SUBTYPE_ACTIONS_DISABLE)
*
* The data argument structure is like this :
* _____________________
* | N | APID | RID |
* ---------------------
* <------------->
* Repeated N times
* See page 178 of the ECSS standard to have a full description, section 21.3.4.
* The N value correspond to the number of events to disable.
* So, for each event, the data contain the APID and the Event
* Identifier for which the triggered action will be disabled.
*
* Returns __PO_HI_SUCCESS if no error are raised.
*/
int __po_hi_driver_pus_events_action_event_enable (__po_hi_driver_pus_apid_t apid, int __po_hi_driver_pus_events_action_event_enable (__po_hi_driver_pus_apid_t apid,
__po_hi_driver_pus_rid_t rid); __po_hi_driver_pus_rid_t rid);
...@@ -170,3 +219,6 @@ int __po_hi_driver_pus_events_action_event_report (); ...@@ -170,3 +219,6 @@ int __po_hi_driver_pus_events_action_event_report ();
* this report, we use the __po_hi_driver_pus_events_action_report_t type. * this report, we use the __po_hi_driver_pus_events_action_report_t type.
*/ */
#endif /* __PO_HI_DRIVER_PUS_EVENTS_ACTION_H__ */
/*
* This is a part of PolyORB-HI-C distribution, a minimal
* middleware written for generated code from AADL models.
* You should use it with the Ocarina toolsuite.
*
* For more informations, please visit http://ocarina.enst.fr
*
* Copyright (C) 2010, European Space Agency.
*/
#ifndef __PO_HI_DRIVER_PUS_PARAMETER_MONITORING_H__
#define __PO_HI_DRIVER_PUS_PARAMETER_MONITORING_H__
#define __PO_HI_DRIVER_PUS_PARAMETER_MONITORING_SUBTYPE_ENABLE 1
#define __PO_HI_DRIVER_PUS_PARAMETER_MONITORING_SUBTYPE_DISABLE 1<<1
#define __PO_HI_DRIVER_PUS_PARAMETER_MONITORING_SUBTYPE_CHANGE_REPORTING_DELAY ((1<<1)|1)
/*
* This file is part of the implementation of the Parameter
* Monitoring service of PUS (service type 12).
*/
/*
* To work, this code must be interfaces with code generated
* from Ocarina/TASTE. It requires the following definitions:
* - BLABLA
*/
int __po_hi_driver_pus_parameter_monitoring_enable (char* data, int data_length);
/*
* Enable the monitoring of one, several or all parameters.
* The data argument is RAW data while the data_length arg specifies the size
* of the data argument.
* It corresponds to subtype 1
* (__PO_HI_DRIVER_PUS_PARAMETER_MONITORING_SUBTYPE_ENABLE).
*
* The data argument is structured like this :
* ___________________________________________
* | N | PARAM 1 | PARAM 2 | ..... | PARAM N |
* -------------------------------------------
* <------->
* Repeated N times
*
* The value of N indicates the number of parameter to enable.
* If N = 0, then, the whole monitoring of all parameters
* is enable.
*
* Returns __PO_HI_SUCCESS if no error is raised.
*/
int __po_hi_driver_pus_parameter_monitoring_disable (char* data, int data_length);
/*
* Disable the monitoring of one, several or all parameters.
* The data argument is RAW data while the data_length arg specifies the size
* of the data argument.
* It corresponds to subtype 2
* (__PO_HI_DRIVER_PUS_PARAMETER_MONITORING_SUBTYPE_DISABLE).
*
* The data argument is structured like this :
* ___________________________________________
* | N | PARAM 1 | PARAM 2 | ..... | PARAM N |
* -------------------------------------------
* <------->
* Repeated N times
*
* The value of N indicates the number of parameter to disable.
* If N = 0, then, the whole monitoring of all parameters
* is disable.
*
* Returns __PO_HI_SUCCESS if no error is raised.
*/
int __po_hi_driver_pus_parameter_monitoring_change_reporting_delay (__po_hi_uint32_t delay);
/*
* Change the reporting delay. Correspond to section 15.3.2 of the ECSS
* standard, subtype 3 (__PO_HI_DRIVER_PUS_PARAMETER_MONITORING_SUBTYPE_CHANGE_REPORTING_DELAY).
*
* Returns __PO_HI_SUCCESS if no error is detected.
*/
#endif /* __PO_HI_DRIVER_PUS_PARAMETER_MONITORING_H__ */
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment