PUD: update a comment about UTC time
[olsrd.git] / lib / pud / wireformat-java / src / main / java / org / olsr / plugin / pud / PositionUpdate.java
1 package org.olsr.plugin.pud;
2
3 import java.net.InetAddress;
4 import java.util.Date;
5
6 /**
7  * This class represents an uplink message, type position update.
8  */
9 public class PositionUpdate extends UplinkMessage {
10         private static final long serialVersionUID = -7253852907534653248L;
11
12         /**
13          * Default constructor
14          */
15         public PositionUpdate() {
16                 super();
17         }
18
19         /**
20          * Constructor
21          * 
22          * @param data
23          *            the received message
24          * @param dataSize
25          *            the number of bytes in the received message
26          */
27         public PositionUpdate(byte[] data, int dataSize) {
28                 super(data, dataSize);
29         }
30
31         /*
32          * OLSR header
33          */
34
35         /**
36          * @return the (OLSR main) IP address of the OLSR node that sent the uplink
37          *         message
38          */
39         public native InetAddress getOlsrMessageOriginator();
40
41         /*
42          * PudOlsrPositionUpdate
43          */
44
45         /**
46          * @return the version of the position update message
47          */
48         public native int getPositionUpdateVersion();
49
50         /**
51          * @return the validity time (in seconds) the position update message
52          */
53         public native long getPositionUpdateValidityTime();
54
55         /**
56          * @return the content mask the position update message
57          */
58         public native int getPositionUpdateSMask();
59
60         /*
61          * GpsInfo
62          */
63
64         /**
65          * @param baseDate
66          *            the base date relative to which the time of the position
67          *            update message must be determined (milliseconds since Epoch)
68          * @return the time of the position update message (milliseconds since
69          *         Epoch, UTC)
70          */
71         public native long getPositionUpdateTime(long baseDate);
72
73         /**
74          * @return the latitude (in degrees) of the position update message
75          */
76         public native double getPositionUpdateLatitude();
77
78         /**
79          * @return the longitude (in degrees) of the position update message
80          */
81         public native double getPositionUpdateLongitude();
82
83         /**
84          * @return the altitude (in meters) of the position update message
85          */
86         public native long getPositionUpdateAltitude();
87
88         /**
89          * @return the speed (in kph) of the the position update message
90          */
91         public native long getPositionUpdateSpeed();
92
93         /**
94          * @return the track angle (in degrees) of the position update message
95          */
96         public native long getPositionUpdateTrack();
97
98         /**
99          * @return the HDOP of the position update message
100          */
101         public native double getPositionUpdateHdop();
102
103         /*
104          * NodeInfo
105          */
106
107         /**
108          * @return the nodeIdType of the position update message
109          */
110         public native int getPositionUpdateNodeIdType();
111
112         /**
113          * @return the nodeId of the position update message
114          */
115         public native String getPositionUpdateNodeId();
116 }