gnss

package
v0.0.0-...-97f0c58 Latest Latest
Warning

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

Go to latest
Published: Jan 31, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package gnss contains common constants and type definitions.

Index

Constants

This section is empty.

Variables

View Source
var ByAbbr = map[string]System{
	"G":     SysGPS,
	"R":     SysGLO,
	"E":     SysGAL,
	"J":     SysQZSS,
	"C":     SysBDS,
	"I":     SysNavIC,
	"S":     SysSBAS,
	"M":     SysMIXED,
	"GPS":   SysGPS,
	"GLO":   SysGLO,
	"GAL":   SysGAL,
	"QZSS":  SysQZSS,
	"QZS":   SysQZSS,
	"BDS":   SysBDS,
	"IRNSS": SysNavIC,
	"IRS":   SysNavIC,
	"NavIC": SysNavIC,
	"SBAS":  SysSBAS,
}

ByAbbr is a lookup table for satellite systems, with "GPS", "GLO", "G", "R" etc. as key.

Functions

This section is empty.

Types

type Antenna

type Antenna struct {
	Type                   string    `json:"type" validate:"required"`
	Radome                 string    `json:"antennaRadomeType"`
	RadomeSerialNum        string    `json:"radomeSerialNumber"`
	SerialNum              string    `json:"serialNumber" validate:"required"`
	ReferencePoint         string    `json:"antennaReferencePoint"`
	EccUp                  float64   `json:"markerArpUpEcc"`
	EccNorth               float64   `json:"markerArpNorthEcc"`
	EccEast                float64   `json:"markerArpEastEcc"`
	AlignmentFromTrueNorth float64   `json:"alignmentFromTrueNorth"` // in deg; + is clockwise/east
	CableType              string    `json:"antennaCableType"`       // vendor & type number
	CableLength            float32   `json:"antennaCableLength"`     // in meter
	DateInstalled          time.Time `json:"dateInstalled"`
	DateRemoved            time.Time `json:"dateRemoved"`
	Notes                  string    `json:"notes"` // Additional Information
}

Antenna is a GNSS antenna.

func (Antenna) Equal

func (ant Antenna) Equal(ant2 *Antenna) bool

Equal reports whether two antennas have the same values for the significant parameters.

type ByPRN

type ByPRN []PRN

ByPRN implements sort.Interface based on the PRN.

func (ByPRN) Len

func (p ByPRN) Len() int

func (ByPRN) Less

func (p ByPRN) Less(i, j int) bool

func (ByPRN) Swap

func (p ByPRN) Swap(i, j int)

type PRN

type PRN struct {
	Sys System // The satellite system.
	Num int8   // The satellite number.

}

PRN specifies a GNSS satellite.

func NewPRN

func NewPRN(prn string) (PRN, error)

NewPRN returns a new PRN for the string prn that is e.g. G12.

func (PRN) String

func (prn PRN) String() string

String is a PRN Stringer.

type Receiver

type Receiver struct {
	Type                 string    `json:"type" validate:"required"`
	SatSystemsDeprecated string    `json:"satelliteSystem"`                      // Deprecated: Sattelite System for compatibility with GA JSON
	SatSystems           Systems   `json:"satelliteSystems" validate:"required"` // Sattelite System
	SerialNum            string    `json:"serialNumber" validate:"required"`
	Firmware             string    `json:"firmwareVersion"`
	ElevationCutoff      float64   `json:"elevationCutoffSetting"`   // degree
	TemperatureStabiliz  string    `json:"temperatureStabilization"` // none or tolerance in degrees C
	DateInstalled        time.Time `json:"dateInstalled" validate:"required"`
	DateRemoved          time.Time `json:"dateRemoved"`
	Notes                string    `json:"notes"` // Additional Information
}

Receiver is a GNSS receiver.

func (Receiver) Equal

func (recv Receiver) Equal(recv2 *Receiver) bool

Equal reports whether two receivers have the same values for the significant parameters. Note for STATION INFOTMATION files: Some generators do not consider the receiver firmware for this comparision, e.g. EUREF.STA.

type System

type System int

System is a satellite system.

const (
	SysGPS System = iota + 1
	SysGLO
	SysGAL
	SysQZSS
	SysBDS
	SysNavIC
	SysSBAS
	SysMIXED
)

Available satellite systems.

func (System) Abbr

func (sys System) Abbr() string

Abbr returns the systems' abbreviation used in RINEX.

func (System) MarshalJSON

func (sys System) MarshalJSON() ([]byte, error)

For JSON encoding implement the json.Marshaler interface.

func (System) String

func (sys System) String() string

type Systems

type Systems []System

Systems specifies a list of satellite systems.

func ParseSatSystems

func ParseSatSystems(s string) (Systems, error)

ParseSatSystems parses a string with satellite systems in the form of "GPS+GLO+GAL+BDS+SBAS+IRNSS".

func (Systems) String

func (syss Systems) String() string

String returns the contained systems in sitelog manner GPS+GLO+...

Jump to

Keyboard shortcuts

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