File: /home/oboss/Users/gec/sources/Demonstrator/Payload/payload-science_manager.ads
1 --% Compilation Unit: Payload.Science_Manager
2 --
3 --% Category: Package Declaration
4 --
5 --% Release: $Name: $
6 --
7 --% Version: $Revision: 2.1 $
8 --
9 --% Author: $Author: gec $
10 --
11 --% Revision Log:
12 -- $Log: payload-science_manager.ads,v $
13 -- Revision 2.1 2004/02/13 16:16:48 gec
14 -- Merged results of Demonstrator development on to main OBOSS trunk.
15 --
16 -- Revision 1.1.2.2 2004/02/04 13:07:44 gec
17 -- Added payload environment simulations.
18 --
19 -- Revision 1.1.2.1 2004/01/26 10:14:02 gec
20 -- Partial update of payload application process according to Demonstrator
21 --+ specification. Applicable for integration testing.
22 --
23 --
24 --% Project: OBOSS
25 --
26 --% Copyright (C) 2004 by Terma A/S
27 -- Proprietary and intellectual rights of Terma A/S, Denmark,
28 -- are involved in the subject-matter of this material and
29 -- all manufacturing, reproduction, use, disclosure, and
30 -- sales rights pertaining to such subject-matter are
31 -- expressly reserved. This material is submitted for a
32 -- specific purpose as agreed, and the recipient by
33 -- accepting this material agrees that this material will
34 -- not be used, copied, or reproduced in whole or in part
35 -- nor its contents revealed in any manner or to any person,
36 -- except to meet the purpose for which it was submitted and
37 -- subject to the terms of the agreement.
38 --
39 --% Target Dependencies:
40 -- None
41 --% Compiler Dependencies:
42 -- None
43
44 --~-----------------------------------------------------------------------------
45
46 package Payload.Science_Manager is
47
48 --% Library Package:
49 -- Description
50 --% Active Tasks:
51 --> Science_Collector - Cyclic
52 --% Passive Tasks:
53 --> None
54
55 -- A state transition has been requested being illegal in the current
56 --+ state.
57 Illegal_Transition : exception;
58
59 -- Enumerations representing the possible science modes
60 type Payload_Mode is
61 (Stand_By,
62 Moderate_Speed,
63 High_Speed);
64
65 -- Seeds used for the science data generation
66 type Science_Seed is range 0 .. 199;
67 type Science_Seed_ID is
68 (Science_Seed_1,
69 Science_Seed_2);
70
71 type Science_Seed_Specification is
72 record
73 ID : Science_Seed_ID;
74 Value : Science_Seed;
75 end record;
76
77
78 -- Enumerations representing the possible science modes
79 subtype Science_Modes is Payload_Mode range Moderate_Speed .. High_Speed;
80
81
82 --% Subprogram:
83 -- Place the payload in stand-by mode.
84 --% Parameter Constraints:
85 --> None
86 --% Exceptions Raised:
87 --> Illegal_Transition - Raised if payload is in stand by mode
88
89 procedure Activate_Stand_By_Mode;
90
91 --% Subprogram:
92 -- Place the payload in the designated science mode.
93 --% Parameter Constraints:
94 --> None
95 --% Exceptions Raised:
96 --> Illegal_Transition - Raised if payload is in moderate speed science
97 --+ mode
98 procedure Activate_Science_Mode
99 (Mode : in Science_Modes);
100
101 --% Subprogram:
102 -- Acquires the current system mode for the payload
103 --% Parameter Constraints:
104 --> None
105 --% Exceptions Raised:
106 --> None
107 function Get_Current_Mode
108 return Payload_Mode;
109
110 --% Subprogram:
111 -- Description
112 --% Parameter Constraints:
113 --> parameter_name - Constraints
114 --% Exceptions Raised:
115 --> exception_name - Conditions
116
117 procedure Update_Science_Seed
118 (Spec : in Science_Seed_Specification);
119
120 --% Subprogram:
121 -- Acquires the current seeds used for payload science generation
122 --% Parameter Constraints:
123 --> None
124 --% Exceptions Raised:
125 --> None
126 function Get_Current_Seed
127 (ID : in Science_Seed_ID)
128 return Science_Seed;
129
130 end Payload.science_Manager;
131
132 --~-----------------------------------------------------------------------------
133