-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathplayer-planner.ads
66 lines (45 loc) · 1.74 KB
/
player-planner.ads
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
-- Planner proxy interface
with Player.Client;
with Player.Interfaces;
with Player.Types;
package Player.Planner is
pragma Elaborate_Body;
type Object is new Interfaces.Object with null record;
-- playerc_planner_t *
procedure Create
(This : in out Object;
Conn : in Client.Connection_Type;
Index : in Natural := 0);
procedure Subscribe (This : in out Object; Mode : in Access_Modes);
procedure Unsubscribe (This : in out Object);
procedure Enable (This : in out Object; Enabled : in Boolean := True);
-- function Get_Path_Valid (This : in Object) return Boolean;
--
-- function Get_Path_Done (This : in Object) return Boolean;
--
-- function Get_Current_Pose (This : in Object) return Pose;
--
-- function Get_Goal_Location (This : in Object) return Pose;
--
-- function Get_Current_Waypoint_Location (This : in Object) return Pose;
--
-- function Get_Current_Waypoint_Index (This : in Object) return Natural;
--
-- function Get_Waypoint_Count (This : in Object) return Natural;
--
-- function Get_Waypoints (This : in Object) return Pose_Array;
procedure Set_Cmd_Pose
(This : in Object;
X, Y, A : in Double);
private
use Interfaces;
procedure Destroy (This : in out Object);
procedure Destroy_Handle (This : in Types.Handle);
pragma Import (C, Destroy_Handle, "playerc_planner_destroy");
function Get_Planner_Max_Waypoints return I.C.int;
pragma Import (C, Get_Planner_Max_Waypoints);
procedure Update_Waypoints (This : in Types.Handle);
pragma Import (C, Update_Waypoints, "playerc_planner_get_waypoints");
Enabling : constant array (Boolean) of I.C.Int :=
(False => 0, True => 1);
end Player.Planner;