File: /home/oboss/Users/gec/sources/Demonstrator/Data_Handling_System/data_handling_system-large_data_manager.ads

1     --% Compilation Unit: Large_Data_Manager
2     --
3     --% Category: Generic Package Instantiation
4     --
5     --% Release:  $Name:  $
6     --
7     --% Version:  $Revision: 2.1 $
8     --
9     --% Author:   $Author: gec $
10     --
11     --% Revision Log:
12     --    $Log: data_handling_system-large_data_manager.ads,v $
13     --    Revision 2.1  2004/02/13 16:16:31  gec
14     --    Merged results of Demonstrator development on to main OBOSS trunk.
15     --
16     --    Revision 1.1.2.1  2003/12/12 12:10:48  gec
17     --    Updated Data Handling System application process according to 'OBOSS-III Demonstrator Test Case Specification'.
18     --
19     --
20     --% Project: OBOSS
21     --
22     --% Copyright (C) 2003 by Terma A/S
23     --  Proprietary and intellectual rights of Terma A/S, Denmark,
24     --  are involved in the subject-matter of this material and
25     --  all manufacturing, reproduction, use, disclosure, and
26     --  sales rights pertaining to such subject-matter are
27     --  expressly reserved. This material is submitted for a
28     --  specific purpose as agreed, and the recipient by
29     --  accepting this material agrees that this material will
30     --  not be used, copied, or reproduced in whole or in part
31     --  nor its contents revealed in any manner or to any person,
32     --  except to meet the purpose for which it was submitted and
33     --  subject to the terms of the agreement.
34     --
35     --% Target Dependencies:
36     --    None
37     --% Compiler Dependencies:
38     --    None
39     
40     --~-----------------------------------------------------------------------------
41     
42     with PUS;
43     package Data_Handling_System.Large_Data_Manager is
44     
45     
46        --% Library Package:
47        --    Instance of a large data transfer service.
48        --    Provides receiving as well as sending subservices.
49        --% Active Tasks:
50        -->   task_name - Category
51        --% Passive Tasks:
52        -->   task_name - Description
53     
54        pragma Elaborate_Body(Data_Handling_System.Large_Data_Manager);
55     
56     
57        --% Subprogram:
58        --    Initialization of large data transfer sintance
59        --% Parameter Constraints:
60        -->   None
61        --% Exceptions Raised:
62        -->   None
63     
64        procedure Initialize;
65     
66        --% Subprogram:
67        --    Main handler for TC PUS Packets delivered to the Large Data Transfer
68        --+    service.
69        --    The TC PUS Packet is delivered to the correct sub-service, or a TC
70        --+    Verification failure is generated.
71        --% Parameter Constraints:
72        -->   TC_Packet - Must be a TC PUS Packet
73        --% Exceptions Raised:
74        -->   None
75     
76        procedure Handle_PUS_Packet
77              (TC_Packet : in     PUS.PUS_Packet);
78     
79        --% Subprogram:
80        --    Optional Deposit function for all services sending TC and TM PUS
81        --+    Packets through the large data tarnsfer service.
82        --% Parameter Constraints:
83        -->   None
84        --% Exceptions Raised:
85        -->   Satellite_Clock.Time_Not_CUC_Representable - Implementation flaw
86        --+    indicating that mission time format is inconsistent.
87        -->   Source_Data_Stream.Write_Stream_Exhausted - Source_Data_Bit_Size is
88        --+    smaller than required for generation of telecommand verification
89        --+    packet.
90     
91        function Optional_Deposit
92              (PUS_Packet : in     PUS.Optional_PUS_Packet)
93              return Boolean;
94     
95     end Data_Handling_System.large_Data_Manager;
96     
97     --~-----------------------------------------------------------------------------
98