gnss-converters 0.1.0 → 0.1.1
raw patch · 3 files changed
+27/−7 lines, 3 files
Files
- gnss-converters.cabal +1/−1
- src/Data/RTCM3/SBP.hs +5/−5
- src/SwiftNav/SBP/RTCM3.hs +21/−1
gnss-converters.cabal view
@@ -1,5 +1,5 @@ name: gnss-converters-version: 0.1.0+version: 0.1.1 synopsis: GNSS Converters. description: Haskell bindings for GNSS converters. homepage: http://github.com/swift-nav/gnss-converters
src/Data/RTCM3/SBP.hs view
@@ -60,11 +60,11 @@ toLock :: GpsL1Observation -> Word16 toLock _l1 = 0 -toSid :: Word8 -> SBPGnssSignal-toSid sat = SBPGnssSignal- { _sBPGnssSignal_sat = fromIntegral $ sat - 1- , _sBPGnssSignal_band = 0- , _sBPGnssSignal_constellation = 0+toSid :: Word8 -> GnssSignal+toSid sat = GnssSignal+ { _gnssSignal_sat = fromIntegral $ sat - 1+ , _gnssSignal_band = 0+ , _gnssSignal_constellation = 0 } fromObservation1002 :: Observation1002 -> PackedObsContent
@@ -1,3 +1,5 @@+{-# LANGUAGE LambdaCase #-}+ -- | -- Module: SwiftNav.SBP.RTCM3 -- Copyright: Copyright (C) 2015 Swift Navigation, Inc.@@ -16,5 +18,23 @@ import Data.RTCM3 import SwiftNav.SBP +fromMsgObs :: MsgObs -> Msg1002+fromMsgObs _obs = Msg1002+ { _msg1002_header = undefined+ , _msg1002_observations = undefined+ }++fromMsgBasePosEcef :: MsgBasePosEcef -> Msg1005+fromMsgBasePosEcef _basePosEcef = Msg1005+ { _msg1005_reference = undefined+ }+ convert :: SBPMsg -> Maybe RTCM3Msg-convert = undefined+convert = \case+ (SBPMsgObs msg _sbp) -> Just $+ RTCM3Msg1002 msg' $ toRTCM3 msg' where+ msg' = fromMsgObs msg+ (SBPMsgBasePosEcef msg _sbp) -> Just $+ RTCM3Msg1005 msg' $ toRTCM3 msg' where+ msg' = fromMsgBasePosEcef msg+ _sbpMsg -> Nothing