rtcm

package module
v0.0.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2023 License: Apache-2.0 Imports: 1 Imported by: 1

README

RTCM parser library implementation for Go

Go Report Card Coverage Status

Example usage in cmd/ntriplatency

ntriplatency -caster http://caster:port/mount -username username -password password

The biggest issue with this library is that it's not useful for constructing RTCM messages (only really for parsing them). It can be done, but realistically an abstraction would be required so that the developer experience isn't so painful and error prone.

An example of this is that masking is used to identify list lengths and satellite IDs in the RTCM binary structure. Meaning if you add a satellite to an MessageMsm7.SatelliteData, you also have to make a change to the satellite and signal masks. Ideally this would be abstracted such that the masks are computed during Serialization based on the data in the object.

A normalized Observation object may be useful for this. This would lead to scenarios like the following being easily implementable: input io provides a binary MSM7 1077 message which is deserialized into a normalized Observation struct, problematic satellites are removed, then the Observation is Serialized to output io as a binary MSM5 1075 message.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var LeapSeconds = []time.Time{
	time.Date(1972, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1972, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1973, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1974, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1975, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1976, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1977, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1978, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1979, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1981, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1982, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1983, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1985, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1987, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1989, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1990, 12, 31, 23, 59, 59, 0, time.UTC),
	time.Date(1992, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1993, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1994, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1995, 12, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1997, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(1998, 12, 30, 23, 59, 59, 0, time.UTC),
	time.Date(2005, 12, 30, 23, 59, 59, 0, time.UTC),
	time.Date(2008, 12, 30, 23, 59, 59, 0, time.UTC),
	time.Date(2012, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(2015, 06, 30, 23, 59, 59, 0, time.UTC),
	time.Date(2016, 12, 30, 23, 59, 59, 0, time.UTC),
}

Functions

func GpsLeapSeconds

func GpsLeapSeconds() time.Duration

GPSLeapSeconds returns the current sum of leap seconds since 1980

Types

This section is empty.

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL