File: /home/oboss/Users/gec/sources/CDH_Structure/Packet_Router/packet_depositor.ads

1     --% Compilation Unit:   Packet_Depositor
2     --
3     --% Category: Generic Package Declaration
4     --
5     --% Release:  $Name:  $
6     --
7     --% Version:  $Revision: 2.1 $
8     --
9     --% Author:   $Author: jhl $
10     --
11     --% Revision Log:
12     --    $Log: packet_depositor.ads,v $
13     --    Revision 2.1  2003/10/09 11:05:18  jhl
14     --    Added Service 13 And 19
15     --
16     --    Revision 2.0.4.1  2003/10/01 11:54:24  jhl
17     --    Initial version of service 13 Event Action, and 19 Large Data Transfer.
18     --
19     --    Revision 2.0  2003/04/04 08:50:23  gec
20     --    Initial release of source files serving as baseline for OBOSS-III project.
21     --
22     --    Revision 1.1.1.1  2003/04/04 08:13:10  gec
23     --    Imported using TkCVS
24     --
25     --
26     --
27     --% Project: OBOSS
28     --
29     --% Copyright (C) 2003 by Terma A/S
30     --  Proprietary and intellectual rights of Terma A/S, Denmark,
31     --  are involved in the subject-matter of this material and
32     --  all manufacturing, reproduction, use, disclosure, and
33     --  sales rights pertaining to such subject-matter are
34     --  expressly reserved. This material is submitted for a
35     --  specific purpose as agreed, and the recipient by
36     --  accepting this material agrees that this material will
37     --  not be used, copied, or reproduced in whole or in part
38     --  nor its contents revealed in any manner or to any person,
39     --  except to meet the purpose for which it was submitted and
40     --  subject to the terms of the agreement.
41     --
42     --% Target Dependencies:
43     --    None
44     --% Compiler Dependencies:
45     --    None
46     
47     --~-----------------------------------------------------------------------------
48     
49     with PUS;
50     generic
51     
52        --% Generic Parameter Constraints:
53        -->   None
54     
55        with function Formal_Deposit
56              (Packet :        PUS.PUS_Packet)
57              return Boolean;
58     
59     package Packet_Depositor is
60     
61        --% Library Package:
62        --    Utility that forwards generated TC or TM from an application process
63        --+    and increments counters
64        --% Active Tasks:
65        -->   None
66        --% Passive Tasks:
67        -->   None
68     
69        --% Subprogram:
70        --    Request for incrementing counters and distribution of a PUS packet
71        --+    (via the corresponding generic formal parameter); the reply indicates
72        --+    whether the generic formal parameter could deliver the packet.
73        --% Parameter Constraints:
74        -->   None
75        --% Exceptions Raised:
76        -->   None
77     
78        function Deposit
79              (Packet :        PUS.PUS_Packet)
80              return Boolean;
81     
82     
83     
84     
85        --% Subprogram:
86        --    Request for incrementing counters and distribution of a potentially
87        --+    'void' PUS packet (via the corresponding generic formal parameter);
88        --+    the reply indicates whether the generic formal parameter could
89        --+    deliver the packet.
90        --% Parameter Constraints:
91        -->   None
92        --% Exceptions Raised:
93        -->   None
94     
95        function Optional_Deposit
96              (Packet :        PUS.Optional_PUS_Packet)
97              return Boolean;
98     
99     private
100     
101           --% Subprogram:
102           --    Allocation of new counter value for a TC or TM PUS packet
103           --% Parameter Constraints:
104           -->   None
105           --% Exceptions Raised:
106           -->   None
107     
108        procedure Update_Counters
109              (Packet : in     PUS.PUS_Packet);
110     
111     end Packet_Depositor;
112     
113     --~-----------------------------------------------------------------------------
114