File: /home/oboss/Users/gec/sources/PUS_Services/Event_Action/event_action-service-pus_handler.ads

1     --% Compilation Unit: Event_Action.Service.PUS_Handler
2     --
3     --% Category: Generic Package Declaration
4     --
5     --% Release:  $Name:  $
6     --
7     --% Version:  $Revision: 1.2 $
8     --
9     --% Author:   $Author: jhl $
10     --
11     --% Revision Log:
12     --    $Log: event_action-service-pus_handler.ads,v $
13     --    Revision 1.2  2003/10/09 11:05:21  jhl
14     --    Added Service 13 And 19
15     --
16     --    Revision 1.1.2.2  2003/10/06 12:17:15  jhl
17     --    Event Action Post Review first update
18     --
19     --    Revision 1.1.2.1  2003/10/01 11:54:29  jhl
20     --    Initial version of service 13 Event Action, and 19 Large Data Transfer.
21     --
22     --    Revision 2.0  2003/04/04 10:08:58  gec
23     --    Initial release serving as baseline for OBOSS-III project.
24     --
25     --    Revision 1.1.1.1  2003/04/04 07:19:20  gec
26     --    Imported using TkCVS
27     --
28     --
29     --
30     --% Project: OBOSS
31     --
32     --% Copyright (C) 2003 by Terma A/S
33     --  Proprietary and intellectual rights of Terma A/S, Denmark,
34     --  are involved in the subject-matter of this material and
35     --  all manufacturing, reproduction, use, disclosure, and
36     --  sales rights pertaining to such subject-matter are
37     --  expressly reserved. This material is submitted for a
38     --  specific purpose as agreed, and the recipient by
39     --  accepting this material agrees that this material will
40     --  not be used, copied, or reproduced in whole or in part
41     --  nor its contents revealed in any manner or to any person,
42     --  except to meet the purpose for which it was submitted and
43     --  subject to the terms of the agreement.
44     --
45     --% Target Dependencies:
46     --    None
47     --% Compiler Dependencies:
48     --    None
49     
50     --~-----------------------------------------------------------------------------
51     
52     with Event_Action.Service.Interpreter;
53     with Sporadic_Task;
54     private generic package Event_Action.Service.PUS_Handler is
55     
56        --% Library Package:
57        --    Handles the TM and TC PUS packets sent to the event action service.
58        --% Active Tasks:
59        -->   The_Interpreter - Sporadic
60        --% Passive Tasks:
61        -->   None
62     
63        --% Subprogram:
64        --    Handles the incomming TM and TC PUS Packet by sending it to
65        --+    The_Interpreter sporadic task.
66        --% Parameter Constraints:
67        -->   None
68        --% Exceptions Raised:
69        -->   None
70     
71        procedure Handle_PUS_Packet
72              (PUS_Packet : in     PUS.PUS_Packet);
73     
74     private
75     
76        -- Child packages of event action are instantiated in the private spec to avoid
77        --+ elaboration circularities in a static elaboration model.
78     
79        --% Library Package:
80        --    Instantiation of the event action interpreter, for parsing and
81        --+    interpretation/execution of TC and TM PUS Packets sent to the event
82        --+    action service.
83     
84        package The_Interpreter_Execution is new Event_Action.Service.Interpreter;
85     
86        --% Library Package:
87        --    Sporadic task implementing control flow for PUS packet execution
88     
89        package The_Interpreter is new Sporadic_Task
90                 (My_Application_ID =>
91                     Application_Process_ID,
92                  Event_Buffer_Task_Priority =>
93                     PUS_Handler_Buffer_Priority,
94                  Sporadic_Task_Priority =>
95                     PUS_Handler_Interpreter_Priority,
96                  Sporadic_Task_Stack_Size =>
97                     PUS_Handler_Interpreter_Stack_Size,
98                  Sporadic_Operation_Parameter_Type =>
99                     PUS.PUS_Packet,
100                  Sporadic_Event_Buffer_Size =>
101                     PUS_Handler_Buffer_Size,
102                  Sporadic_Operation =>
103                     The_Interpreter_Execution.Interpret);
104     
105     end Event_Action.service.pus_Handler;
106     
107     --~-----------------------------------------------------------------------------
108