Commit b2285ce7 authored by julien.delange's avatar julien.delange
Browse files

continue the specification of the PUS service



git-svn-id: https://tecsw.estec.esa.int/svn/taste/trunk/po-hi-c@1138 129961e7-ef38-4bb5-a8f7-c9a525a55882
parent 180ca39d
......@@ -47,3 +47,126 @@ typedef struct
/*
* Content of an event detection and its corresponding action.
*/
typedef struct
{
__po_hi_driver_pus_apid_t apid;
__po_hi_driver_pus_rid_t rid;
__po_hi_bool_t enabled;
}__po_hi_driver_pus_events_action_report_t;
/*
* A status report entry used for reporting the event detection list.
* (see section 21.3.5 of the ECSS-70-E-41A for more details).
*/
int __po_hi_driver_pus_events_action_add_events_to_detection_list (char* content,
int content_length);
/*
* Add events to the detection list. The argument is only a buffer.
* This buffer is only a RAW buffer that may contain several events to
* add in the detection list. In that case, the structure of the buffer
* is the following (as detailed in ECSS-E-70-41A) :
* ______________________________________
* | N | APID | RID | TC PACKET |
* --------------------------------------
* <------------------------------->
* Repeated N times
*
* If only one event is added, the content of the buffer is like this :
* _______________________________
* | APID | RID | TC PACKET |
* -------------------------------
*
* For more information, refer to section 21.3.1 of the ECSS-E-70-41A
* standard.
*
* This function returns __PO_HI_SUCCESS in case of success.
*/
int __po_hi_driver_pus_events_action_add_event_to_detection_list (__po_hi_driver_pus_apid_t apid,
__po_hi_driver_pus_rid_t rid,
char* action,
int action_length);
/*
* Add an event/action to the detection list. The apid argument is the
* application id that is generating the report. The rid is the identifier
* of the event that is reported. The action argument contains the definition
* of the action while the action_length argument specifies the size of the
* action.
*
* Returns __PO_HI_SUCCESS if successfull.
*/
int __po_hi_driver_pus_events_action_delete_events_from_detection_list (char* content,
int content_length);
/*
* Delete one or several event/action from the detection list. The argument is a
* buffer which structure is like this (as detailed in ECSS-E-70-41A) :
* _______________________
* | N | APID | RID |
* -----------------------
* <--------------->
* Repeated N times
*
* If only one event is deleted, the content of the buffer is like this :
* ________________
* | APID | RID |
* ----------------
*
* For more information, refer to section 21.3.2 of the ECSS-E-70-41A
* standard.
* *
* Returns __PO_HI_SUCCESS if successfull.
*/
int __po_hi_driver_pus_events_action_delete_event_from_detection_list (__po_hi_driver_pus_apid_t apid,
__po_hi_driver_pus_rid_t rid);
/*
* Delete an event/action from the detection list. The apid argument is the
* application id that is generating the report. The rid is the identifier
* of the event that is reported.
*
* Returns __PO_HI_SUCCESS if successfull.
*/
int __po_hi_driver_pus_events_action_clear_detection_list ();
/*
* Clear all entries from the detection list.
*
* Returns __PO_HI_SUCCESS is no error is reported.
*/
int __po_hi_driver_pus_events_action_event_enable (__po_hi_driver_pus_apid_t apid,
__po_hi_driver_pus_rid_t rid);
/*
* Enable an action for a specific event generated by a specific application id.
* The apid argument is the one that generates the event and the rid argument
* is the identifier of the generated event.
*
* Returns __PO_HI_SUCCESS is there is no error.
*/
int __po_hi_driver_pus_events_action_event_disable (__po_hi_driver_pus_apid_t apid,
__po_hi_driver_pus_rid_t rid);
/*
* Disable an action for a specific event generated by a specific application id.
* The apid argument is the one that generates the event and the rid argument
* is the identifier of the generated event.
*
* Returns __PO_HI_SUCCESS is there is no error.
*/
int __po_hi_driver_pus_events_action_event_report ();
/*
* Send the report detection list. It consists of a packet that contain
* all events/action registered in the detection list. To generate
* this report, we use the __po_hi_driver_pus_events_action_report_t type.
*/
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