Documentation
¶
Index ¶
Constants ¶
const DefaultAddress = "localhost:2947"
DefaultAddress of gpsd (localhost:2947)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ATTReport ¶
type ATTReport struct {
Class string `json:"class"`
Tag string `json:"tag"`
Device string `json:"device"`
Time time.Time `json:"time"`
Heading float64 `json:"heading"`
MagSt string `json:"mag_st"`
Pitch float64 `json:"pitch"`
PitchSt string `json:"pitch_st"`
Yaw float64 `json:"yaw"`
YawSt string `json:"yaw_st"`
Roll float64 `json:"roll"`
RollSt string `json:"roll_st"`
Dip float64 `json:"dip"`
MagLen float64 `json:"mag_len"`
MagX float64 `json:"mag_x"`
MagY float64 `json:"mag_y"`
MagZ float64 `json:"mag_z"`
AccLen float64 `json:"acc_len"`
AccX float64 `json:"acc_x"`
AccY float64 `json:"acc_y"`
AccZ float64 `json:"acc_z"`
GyroX float64 `json:"gyro_x"`
GyroY float64 `json:"gyro_y"`
Depth float64 `json:"depth"`
Temperature float64 `json:"temperature"`
}
ATTReport reports vehicle-attitude from the digital compass or the gyroscope
type DEVICEReport ¶
type DEVICEReport struct {
Class string `json:"class"`
Path string `json:"path"`
Activated string `json:"activated"`
Flags int `json:"flags"`
Driver string `json:"driver"`
Subtype string `json:"subtype"`
Bps int `json:"bps"`
Parity string `json:"parity"`
Stopbits string `json:"stopbits"`
Native int `json:"native"`
Cycle float64 `json:"cycle"`
Mincycle float64 `json:"mincycle"`
}
DEVICEReport reports a state of a particular device
type DEVICESReport ¶
type DEVICESReport struct {
Class string `json:"class"`
Devices []DEVICEReport `json:"devices"`
Remote string `json:"remote"`
}
DEVICESReport lists all devices connected to the system
type ERRORReport ¶
ERRORReport is an error response
type GSTReport ¶
type GSTReport struct {
Class string `json:"class"`
Tag string `json:"tag"`
Device string `json:"device"`
Time time.Time `json:"time"`
Rms float64 `json:"rms"`
Major float64 `json:"major"`
Minor float64 `json:"minor"`
Orient float64 `json:"orient"`
Lat float64 `json:"lat"`
Lon float64 `json:"lon"`
Alt float64 `json:"alt"`
}
GSTReport is pseudorange noise report
type PPSReport ¶
type PPSReport struct {
Class string `json:"class"`
Device string `json:"device"`
RealSec float64 `json:"real_sec"`
RealMusec float64 `json:"real_musec"`
ClockSec float64 `json:"clock_sec"`
ClockMusec float64 `json:"clock_musec"`
}
PPSReport is triggered on each pulse-per-second strobe from a device
type SKYReport ¶
type SKYReport struct {
Class string `json:"class"`
Tag string `json:"tag"`
Device string `json:"device"`
Time time.Time `json:"time"`
Xdop float64 `json:"xdop"`
Ydop float64 `json:"ydop"`
Vdop float64 `json:"vdop"`
Tdop float64 `json:"tdop"`
Hdop float64 `json:"hdop"`
Pdop float64 `json:"pdop"`
Gdop float64 `json:"gdop"`
Satellites []Satellite `json:"satellites"`
}
SKYReport reports sky view of GPS satellites
type Satellite ¶
type Satellite struct {
PRN float64 `json:"PRN"`
Az float64 `json:"az"`
El float64 `json:"el"`
Ss float64 `json:"ss"`
Used bool `json:"used"`
}
Satellite describes a location of a GPS satellite
type Session ¶
type Session struct {
// contains filtered or unexported fields
}
Session represents a connection to gpsd
func (*Session) AddFilter ¶
AddFilter attaches a function which will be called for all GPSD reports with the given class. Callback functions have type Filter.
Example:
gps := gpsd.Init(gpsd.DEFAULT_ADDRESS)
gps.AddFilter("TPV", func (r interface{}) {
report := r.(*gpsd.TPVReport)
fmt.Println(report.Time, report.Lat, report.Lon)
})
done := gps.Watch()
<- done
func (*Session) SendCommand ¶
SendCommand sends a command to GPSD
type TPVReport ¶
type TPVReport struct {
Class string `json:"class"`
Tag string `json:"tag"`
Device string `json:"device"`
Mode Mode `json:"mode"`
Time time.Time `json:"time"`
Ept float64 `json:"ept"`
Lat float64 `json:"lat"`
Lon float64 `json:"lon"`
Alt float64 `json:"alt"`
Epx float64 `json:"epx"`
Epy float64 `json:"epy"`
Epv float64 `json:"epv"`
Track float64 `json:"track"`
Speed float64 `json:"speed"`
Climb float64 `json:"climb"`
Epd float64 `json:"epd"`
Eps float64 `json:"eps"`
Epc float64 `json:"epc"`
}
TPVReport is a Time-Position-Velocity report