File: /home/oboss/Users/gec/sources/Basic_Services/Parameter_Structure_Descriptions/parameter_structure_descriptions.ads
1 --% Compilation Unit: Parameter_Structure_Descriptions
2 --
3 --% Category: Package Declaration
4 --
5 --% Release: $Name: $
6 --
7 --% Version: $Revision: 2.0 $
8 --
9 --% Author: $Author: gec $
10 --
11 --% Revision Log:
12 -- $Log: parameter_structure_descriptions.ads,v $
13 -- Revision 2.0 2003/04/04 08:50:11 gec
14 -- Initial release of source files serving as baseline for OBOSS-III project.
15 --
16 -- Revision 1.1.1.1 2003/04/04 08:13:03 gec
17 -- Imported using TkCVS
18 --
19 --
20 --
21 --% Project: OBOSS
22 --
23 --% Copyright (C) 2003 by Terma A/S
24 -- Proprietary and intellectual rights of Terma A/S, Denmark,
25 -- are involved in the subject-matter of this material and
26 -- all manufacturing, reproduction, use, disclosure, and
27 -- sales rights pertaining to such subject-matter are
28 -- expressly reserved. This material is submitted for a
29 -- specific purpose as agreed, and the recipient by
30 -- accepting this material agrees that this material will
31 -- not be used, copied, or reproduced in whole or in part
32 -- nor its contents revealed in any manner or to any person,
33 -- except to meet the purpose for which it was submitted and
34 -- subject to the terms of the agreement.
35 --
36 --% Target Dependencies:
37 -- None
38 --% Compiler Dependencies:
39 -- None
40
41 --~-----------------------------------------------------------------------------
42
43 with Mission_Parameters;
44 with Parameter_Representation;
45 with PUS;
46 with Source_Data_Stream;
47 package Parameter_Structure_Descriptions is
48
49 --% Library Package:
50 -- System wide definition of legal parameter IDs and their associated
51 --+ parameter type and format.
52 --% Active Tasks:
53 --> None
54 --% Passive Tasks:
55 --> None
56
57 -- Indicates that a Put or Get operation has failed because transformation
58 --+ from external to internal format failed
59 Illegal_Parameter_ID_Value : exception;
60
61 -- External representatiion of Parameter IDs in PUS packets.
62 subtype External_Parameter_ID is Mission_Parameters.External_Parameter_ID;
63
64 -- Internal representation of parameter IDs.
65 type Parameter_ID is new Mission_Parameters.Parameter_ID;
66
67 subtype Parameter_Number is Parameter_ID;
68 type Parameter_Number_List is array (Natural range <>) of Parameter_Number;
69
70 --% Subprogram:
71 -- Append external representation of ID to end of Src_Data write stream.
72 --% Parameter Constraints:
73 --> ID - Shall belong to set of mission defined parameter IDs
74 --% Exceptions Raised:
75 --> Illegal_Parameter_ID_Value - Transformation from internal to external
76 --+ format failed or ID is not a defined parameter ID.
77 procedure Put
78 (Src_Data : in out Source_Data_Stream.Write_Stream;
79 ID : in Parameter_ID);
80
81 --% Subprogram:
82 -- Extract external representation of ID from head of Src_Data read
83 --+ stream.
84 --% Parameter Constraints:
85 --> ID - Shall belong to set of mission defined parameter IDs
86 --% Exceptions Raised:
87 --> Illegal_Parameter_ID_Value - Transformation from external to internal
88 --+ format failed or ID is not a defined parameter ID.
89 procedure Get
90 (Src_Data : in out Source_Data_Stream.Read_Stream;
91 ID : out Parameter_ID);
92
93 --% Subprogram:
94 -- Look-up parameter type and format for parameter ID in mission specific
95 --+ mapping.
96 -- Returns Parameter_Representation.Not_A_Value_Parameter_Code if ID is
97 --+ not defined.
98 --% Parameter Constraints:
99 --> None
100 --% Exceptions Raised:
101 --> None
102 function Get_Parameter_Code
103 (ID : in Parameter_ID)
104 return Parameter_Representation.Parameter_Code;
105
106 --% Subprogram:
107 -- Predicate indicating whether ID belongs to the set of mission defined
108 --+ parameter IDs.
109 --% Parameter Constraints:
110 --> None
111 --% Exceptions Raised:
112 --> None
113 function Parameter_Is_Defined
114 (ID : in Parameter_ID)
115 return Boolean;
116
117 end Parameter_Structure_Descriptions;
118
119 --~-----------------------------------------------------------------------------
120