File: /home/oboss/Users/gec/sources/PUS_Services/Device_Command_Distribution/external_device_command_distribution_types.ads
1 --% Compilation Unit: External_Device_Command_Distribution_Types
2 --
3 --% Category: Package Declaration
4 --
5 --% Release: $Name: $
6 --
7 --% Version: $Revision: 2.3 $
8 --
9 --% Author: $Author: gec $
10 --
11 --% Revision Log:
12 -- $Log: external_device_command_distribution_types.ads,v $
13 -- Revision 2.3 2004/02/13 16:17:17 gec
14 -- Merged results of Demonstrator development on to main OBOSS trunk.
15 --
16 -- Revision 2.2.2.1 2003/12/04 13:15:07 gec
17 -- Introduced lacking redefinition of device adresses. Should have been part of the ECSS migration.
18 --
19 -- Revision 2.2 2003/11/13 14:57:40 gec
20 -- Merged ECSS Migration branch to main trunk.
21 --
22 -- Revision 2.1.2.1 2003/10/30 13:51:24 gec
23 -- Updated device command distribution service according to ECSS Telemetry &
24 --+ Telecommand Packet Utilization Standard
25 --
26 -- Revision 2.1 2003/10/21 13:07:33 gec
27 -- Eliminated comments referring to Alsys compiler.
28 --
29 -- Revision 2.0 2003/04/04 08:50:59 gec
30 -- Initial release of source files serving as baseline for OBOSS-III
31 --+ project.
32 --
33 -- Revision 1.1.1.1 2003/04/04 08:13:11 gec
34 -- Imported using TkCVS
35 --
36 --
37 --
38 --% Project: OBOSS
39 --
40 --% Copyright (C) 2003 by Terma A/S
41 -- Proprietary and intellectual rights of Terma A/S, Denmark,
42 -- are involved in the subject-matter of this material and
43 -- all manufacturing, reproduction, use, disclosure, and
44 -- sales rights pertaining to such subject-matter are
45 -- expressly reserved. This material is submitted for a
46 -- specific purpose as agreed, and the recipient by
47 -- accepting this material agrees that this material will
48 -- not be used, copied, or reproduced in whole or in part
49 -- nor its contents revealed in any manner or to any person,
50 -- except to meet the purpose for which it was submitted and
51 -- subject to the terms of the agreement.
52 --
53 --% Target Dependencies:
54 -- None
55 --% Compiler Dependencies:
56 -- None
57
58 --~-----------------------------------------------------------------------------
59
60 with Parameter_Representation;
61 with Mission_Parameters;
62 with Task_Priority_Control;
63 with Ada_Task_Configuration;
64 package External_Device_Command_Distribution_Types is
65
66 --% Library Package:
67 -- Definition of external representation and mission specific parameters
68 --+ for service type 2: Device Command Distribution.
69 --% Active Tasks:
70 --> None
71 --% Passive Tasks:
72 --> None
73
74 -- Application_ID of single onboard application process responsible for
75 --+ device command distribution.
76 Application_ID :
77 constant Mission_Parameters.APID :=
78 Mission_Parameters.Data_Handling_System;
79
80 -- Constant indicating the maximum number of commands in a service request
81 -- Applies to all service subtypes
82 Max_No_Of_Commands : constant Positive := 10;
83
84 -- Length of queue queueueing up telecommands for execution
85 Telecommand_Buffer_Size : constant := 2;
86
87 -- Priority of Telecommand_Buffer buffering up calls to Handle_PUS_Packet.
88 -- Must be higher than ceiling of Telecommand_Interpreter_Priority and any
89 --+ callers of Handle_PUS_Packet
90 Telecommand_Buffer_Priority :
91 constant Task_Priority_Control.Passive_Task_Priority :=
92 Ada_Task_Configuration.Data_Handling_System_TC_Buffer_Priority;
93
94 -- Priority and stack size of sporadic task implemeting telecommand
95 --+ execution.
96 Telecommand_Interpreter_Priority :
97 constant Task_Priority_Control.Active_Task_Priority :=
98 Ada_Task_Configuration.
99 Data_Handling_System_Telecommand_Interpreter_Priority;
100 Telecommand_Interpreter_Stack_Size : constant := 30_000;
101
102 -- External representation of fields N, NOL, NOE for services (2,1) and
103 --+ (2,2).
104 type List_Length is new Parameter_Representation.Unsigned_Integer_4;
105
106 -- External representation of on/off address fields for service (2,1)
107 type On_Off_Device_Addr is new Parameter_Representation.Enumerated_16;
108
109 -- External representation of register address field for service (2,2).
110 type Register_Device_Addr is new Parameter_Representation.Enumerated_16;
111
112 -- External representation of register data fields for service (2,2).
113 type Register_Data is new Parameter_Representation.Unsigned_Integer_4;
114
115 end External_Device_Command_Distribution_Types;
116
117 --~-----------------------------------------------------------------------------
118