File: /home/oboss/Users/gec/sources/PUS_Services/Function_Management/function_management_types.ads
1 --% Compilation Unit: Function_Management_Types
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: function_management_types.ads,v $
13 -- Revision 2.1 2003/11/13 14:57:43 gec
14 -- Merged ECSS Migration branch to main trunk.
15 --
16 -- Revision 2.0.8.1 2003/11/11 14:52:39 gec
17 -- Updated Function Management Service according to ECSS-E-70-41A standard.
18 --
19 -- Revision 2.0 2003/04/04 08:51:04 gec
20 -- Initial release of source files serving as baseline for OBOSS-III
21 --+ project.
22 --
23 -- Revision 1.1.1.1 2003/04/04 08:13:12 gec
24 -- Imported using TkCVS
25 --
26 --
27 --
28 --% Project: OBOSS
29 --
30 --% Copyright (C) 2003 by Terma A/S
31 -- Proprietary and intellectual rights of Terma A/S, Denmark,
32 -- are involved in the subject-matter of this material and
33 -- all manufacturing, reproduction, use, disclosure, and
34 -- sales rights pertaining to such subject-matter are
35 -- expressly reserved. This material is submitted for a
36 -- specific purpose as agreed, and the recipient by
37 -- accepting this material agrees that this material will
38 -- not be used, copied, or reproduced in whole or in part
39 -- nor its contents revealed in any manner or to any person,
40 -- except to meet the purpose for which it was submitted and
41 -- subject to the terms of the agreement.
42 --
43 --% Target Dependencies:
44 -- None
45 --% Compiler Dependencies:
46 -- None
47
48 --~-----------------------------------------------------------------------------
49
50 with Mission_Parameters;
51 with Parameter_Representation;
52 with Parameter_Structure_Descriptions;
53 package Function_Management_Types is
54
55 --% Library Package:
56 -- Internal representation of packet fields and data types associated to
57 --+ service 8: Function Management in Packet Utilisation Standard
58 --% Active Tasks:
59 --> None
60 --% Passive Tasks:
61 --> None
62
63 -- Set of supported subservices
64 type Subservice is
65 (Perform_Function);
66
67 -- Internal representation of Function ID string included in service types
68 --+ (8,1), (8,2) and (8,3)
69 Function_ID_Length : constant := 20;
70 type Function_ID is new String (1 .. Function_ID_Length);
71
72 -- Character padded at end of function IDs if shorter than
73 --+ Function_ID_Length.
74 Padding_Character : constant Character := ' ';
75
76 --% Subprogram:
77 -- Transform variable length strings to function ID representation.
78 --% Parameter Constraints:
79 --> Fct_ID - Fct_ID'length <= Function_ID_Length
80 --% Exceptions Raised:
81 --> Constraint_Error - Raised if Fct_ID'length > Function_ID_Length
82 function Derive_Function_ID
83 (Fct_ID : String)
84 return Function_ID;
85
86 -- List length for parameter lists
87 type List_Length is new Natural;
88
89 -- Internal representation of parameters included in service type (8,1).
90
91 type Parameter_Specification is
92 record
93 Parameter_No : Parameter_Structure_Descriptions.Parameter_ID;
94 Parameter_Value : Parameter_Representation.Standard_Value_Pointer;
95 end record;
96
97 type Parameter_List is array (List_Length range <>) of
98 Parameter_Specification;
99
100 end Function_Management_Types;
101
102 --~-----------------------------------------------------------------------------
103