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