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