File: /home/oboss/Users/gec/sources/Basic_Services/Mission_Parameters/application_process_parameters.ads

1     --% Compilation Unit:	Application_Process_Parameters
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: application_process_parameters.ads,v $
13     --    Revision 2.1  2004/02/13 16:16:27  gec
14     --    Merged results of Demonstrator development on to main OBOSS trunk.
15     --
16     --    Revision 2.0.12.1  2004/02/13 12:24:42  gec
17     --    Updated TC buffer sizes for Power Conditioning System application process to cater for bursts of telecommands from onboard scheduling service.
18     --
19     --    Revision 2.0  2003/04/04 08:50:08  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:03  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 Mission_Parameters;
50     with Parameter_Representation;
51     package Application_Process_Parameters is
52     
53        --% Library Package:
54        --    Definition of a subset of the application process level parameters
55        --+    from Appendix B of the PUS standard.
56        --% Active Tasks:
57        -->   None
58        --% Passive Tasks:
59        -->   None
60     
61        subtype Time_Code is
62              Parameter_Representation.Parameter_Format_Code range 0 .. 18;
63     
64        type Time_Format is
65              (CUC,
66               CDS);
67     
68        type Precence is
69              (Absent,
70               Present);
71     
72        type Appl_Time_Code_Type(Time_Precence : Precence := Precence'First) is
73           record
74              case Time_Precence is
75                 when Absent =>
76                    null;
77                 when Present =>
78                    Format : Time_Format;
79                    Code   : Time_Code;
80              end case;
81           end record;
82     
83        type Application_Process_Mission_Parameters is
84           record
85              Appl_Time_Code    : Appl_Time_Code_Type;
86              Packet_Queue_Size : Natural;
87           end record;
88     
89        Appl_Time_Code_1 :
90                        constant Appl_Time_Code_Type := (Time_Precence => Absent);
91        Appl_Time_Code_2 : constant Appl_Time_Code_Type :=
92                    (Time_Precence => Present,
93                     Format        => CUC,
94                     Code          => 0);
95     
96        APID_Mission_Parameters_1 :
97           constant Application_Process_Mission_Parameters :=
98                    (Appl_Time_Code    => Appl_Time_Code_1,
99                     Packet_Queue_Size => 5);
100     
101        APID_Mission_Parameters_2 :
102           constant Application_Process_Mission_Parameters :=
103                    (Appl_Time_Code    => Appl_Time_Code_2,
104                     Packet_Queue_Size => 5);
105     
106        APID_Mission_Parameters_3 :
107           constant Application_Process_Mission_Parameters :=
108                    (Appl_Time_Code    => Appl_Time_Code_2,
109                     Packet_Queue_Size => 5);
110     
111        APID_Mission_Parameters_4 :
112           constant Application_Process_Mission_Parameters :=
113                    (Appl_Time_Code    => Appl_Time_Code_2,
114                     Packet_Queue_Size => 50);
115     
116        type Application_Process_Parameters_Map is array
117              (Mission_Parameters.APID) of Application_Process_Mission_Parameters;
118     
119        The_Parameters : constant Application_Process_Parameters_Map :=
120                    (Mission_Parameters.Time_Packet =>
121                        APID_Mission_Parameters_1,
122                     Mission_Parameters.Data_Handling_System =>
123                        APID_Mission_Parameters_2,
124                     Mission_Parameters.Onboard_Storage =>
125                        APID_Mission_Parameters_2,
126                     Mission_Parameters.Power_Conditioning_System =>
127                        APID_Mission_Parameters_4,
128                     Mission_Parameters.Payload =>
129                        APID_Mission_Parameters_2,
130                     Mission_Parameters.Ground =>
131                        APID_Mission_Parameters_3,
132                     Mission_Parameters.Packet_Router =>
133                        APID_Mission_Parameters_4,
134                     Mission_Parameters.Idle =>
135                        APID_Mission_Parameters_1);
136     
137     end Application_Process_Parameters;
138     
139     --~-----------------------------------------------------------------------------
140