Subversion Repositories NaviCtrl

Rev

Rev 162 | Rev 225 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 162 Rev 224
1
#ifndef _WAYPOINTS_H
1
#ifndef _WAYPOINTS_H
2
#define _WAYPOINTS_H
2
#define _WAYPOINTS_H
3
 
3
 
4
#include "ubx.h"
4
#include "ubx.h"
5
 
5
 
6
typedef struct
6
typedef struct
7
{
7
{
8
        GPS_Pos_t Position;             // the gps position of the waypoint, see ubx.h for details
8
        GPS_Pos_t Position;             // the gps position of the waypoint, see ubx.h for details
9
        s16 Heading;                    // orientation, future implementation
9
        s16 Heading;                    // orientation, future implementation
10
        u8  ToleranceRadius;    // in meters, if the MK is within that range around the target, then the next target is triggered
10
        u8  ToleranceRadius;    // in meters, if the MK is within that range around the target, then the next target is triggered
11
        u8  HoldTime;                   // in seconds, if the was once in the tolerance area around a WP, this time defines the delay before the next WP is triggered
11
        u8  HoldTime;                   // in seconds, if the was once in the tolerance area around a WP, this time defines the delay before the next WP is triggered
12
        u8  Event_Flag;                 // future implementation
12
        u8  Event_Flag;                 // future implementation
13
        u8  Index;              // to indentify different waypoints, workaround for bad communications PC <-> NC
13
        u8  Index;              // to indentify different waypoints, workaround for bad communications PC <-> NC
14
        u8  reserve[11];                // reserve
14
        u8  reserve[11];                // reserve
15
} __attribute__((packed)) Waypoint_t;
15
} __attribute__((packed)) Waypoint_t;
16
 
16
 
17
u8 WPList_Init(void);
17
u8 WPList_Init(void);
18
u8 WPList_Clear(void);
18
u8 WPList_Clear(void);
19
u8 WPList_GetCount(void);
19
u8 WPList_GetCount(void);
20
u8 WPList_Append(Waypoint_t* pwp);
20
u8 WPList_Append(Waypoint_t* pwp);
21
Waypoint_t* WPList_Begin(void);
21
Waypoint_t* WPList_Begin(void);
22
Waypoint_t* WPList_End(void);
22
Waypoint_t* WPList_End(void);
23
Waypoint_t* WPList_Next(void);
23
Waypoint_t* WPList_Next(void);
24
Waypoint_t* WPList_GetAt(u8 index);
24
Waypoint_t* WPList_GetAt(u8 index);
-
 
25
Waypoint_t* WPList_GetPOI(void);
-
 
26
void WPList_SetPOI(Waypoint_t* pwp);
25
 
27
 
26
#endif // _WAYPOINTS_H
28
#endif // _WAYPOINTS_H
27
 
29