File: /home/oboss/Users/gec/sources/Basic_Services/Source_Data/universal_parameter_representation-integer.ads
1 --% Compilation Unit: Universal_Parameter_Representation.Integer
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: universal_parameter_representation-integer.ads,v $
13 -- Revision 2.1 2003/11/13 14:57:35 gec
14 -- Merged ECSS Migration branch to main trunk.
15 --
16 -- Revision 1.1.2.1 2003/11/10 10:00:22 gec
17 -- Added universal representation of parameters and associated arithmetic operators.
18 --
19 --
20 --% Project: OBOSS
21 --
22 --% Copyright (C) 2003 by Terma A/S
23 -- Proprietary and intellectual rights of Terma A/S, Denmark,
24 -- are involved in the subject-matter of this material and
25 -- all manufacturing, reproduction, use, disclosure, and
26 -- sales rights pertaining to such subject-matter are
27 -- expressly reserved. This material is submitted for a
28 -- specific purpose as agreed, and the recipient by
29 -- accepting this material agrees that this material will
30 -- not be used, copied, or reproduced in whole or in part
31 -- nor its contents revealed in any manner or to any person,
32 -- except to meet the purpose for which it was submitted and
33 -- subject to the terms of the agreement.
34 --
35 --% Target Dependencies:
36 -- None
37 --% Compiler Dependencies:
38 -- None
39
40 --~-----------------------------------------------------------------------------
41
42 package Universal_Parameter_Representation.Integer is
43
44 --% Library Package:
45 -- Class of universal integers.
46 -- Supertype for integers and enumerations
47 --% Active Tasks:
48 --> None
49 --% Passive Tasks:
50 --> None
51
52 -- Representation of Universal Integers on the given platform
53 type Universal_Representation is new Long_Long_Integer;
54
55 type Universal_Parameter is new Universal_Parameter_Type with private;
56
57 --% Subprogram:
58 -- Constructor for class of universal integer parameters
59 --% Parameter Constraints:
60 --> None
61 --% Exceptions Raised:
62 --> None
63
64 function Make_Universal_Parameter
65 (Parameter : Universal_Representation)
66 return Universal_Parameter;
67
68 --% Subprogram:
69 -- Subtraction operator on abstract universal integer
70 --% Parameter Constraints:
71 --> None
72 --% Exceptions Raised:
73 --> None
74
75 function "-"
76 (Left, Right : Universal_Parameter)
77 return Universal_Parameter;
78
79
80 --% Subprogram:
81 -- Multiplication operator on abstract universal integer type and integer
82 --% Parameter Constraints:
83 --> None
84 --% Exceptions Raised:
85 --> None
86
87 function "*"
88 (Left : Universal_Parameter;
89 Right : Natural)
90 return Universal_Parameter;
91
92 --% Subprogram:
93 -- Abolute operator on abstract universal integer type
94 --% Parameter Constraints:
95 --> None
96 --% Exceptions Raised:
97 --> None
98
99 function "abs"
100 (Left : Universal_Parameter)
101 return Universal_Parameter;
102
103 --% Subprogram:
104 -- Ordering relation on abstract universal integer type
105 --% Parameter Constraints:
106 --> None
107 --% Exceptions Raised:
108 --> None
109
110 function ">"
111 (Left, Right : Universal_Parameter)
112 return Boolean;
113 function ">"
114 (Left : Universal_Parameter;
115 Right : Natural)
116 return Boolean;
117
118 private
119
120 type Universal_Parameter is new Universal_Parameter_Type
121 with record
122 Value : Universal_Representation;
123 end record;
124
125 end Universal_Parameter_Representation.integer;
126
127 --~-----------------------------------------------------------------------------
128