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