packages feed

rtcm 0.2.16 → 0.2.17

raw patch · 5 files changed

+1711/−1 lines, 5 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

+ Data.RTCM3: RTCM3Msg1074 :: Msg1074 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1075 :: Msg1075 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1076 :: Msg1076 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1077 :: Msg1077 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1084 :: Msg1084 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1085 :: Msg1085 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1086 :: Msg1086 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1087 :: Msg1087 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1094 :: Msg1094 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1095 :: Msg1095 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1096 :: Msg1096 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1097 :: Msg1097 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1104 :: Msg1104 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1105 :: Msg1105 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1106 :: Msg1106 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1107 :: Msg1107 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1114 :: Msg1114 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1115 :: Msg1115 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1116 :: Msg1116 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1117 :: Msg1117 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1124 :: Msg1124 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1125 :: Msg1125 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1126 :: Msg1126 -> Msg -> RTCM3Msg
+ Data.RTCM3: RTCM3Msg1127 :: Msg1127 -> Msg -> RTCM3Msg
+ Data.RTCM3: _RTCM3Msg1074 :: Prism' RTCM3Msg (Msg1074, Msg)
+ Data.RTCM3: _RTCM3Msg1075 :: Prism' RTCM3Msg (Msg1075, Msg)
+ Data.RTCM3: _RTCM3Msg1076 :: Prism' RTCM3Msg (Msg1076, Msg)
+ Data.RTCM3: _RTCM3Msg1077 :: Prism' RTCM3Msg (Msg1077, Msg)
+ Data.RTCM3: _RTCM3Msg1084 :: Prism' RTCM3Msg (Msg1084, Msg)
+ Data.RTCM3: _RTCM3Msg1085 :: Prism' RTCM3Msg (Msg1085, Msg)
+ Data.RTCM3: _RTCM3Msg1086 :: Prism' RTCM3Msg (Msg1086, Msg)
+ Data.RTCM3: _RTCM3Msg1087 :: Prism' RTCM3Msg (Msg1087, Msg)
+ Data.RTCM3: _RTCM3Msg1094 :: Prism' RTCM3Msg (Msg1094, Msg)
+ Data.RTCM3: _RTCM3Msg1095 :: Prism' RTCM3Msg (Msg1095, Msg)
+ Data.RTCM3: _RTCM3Msg1096 :: Prism' RTCM3Msg (Msg1096, Msg)
+ Data.RTCM3: _RTCM3Msg1097 :: Prism' RTCM3Msg (Msg1097, Msg)
+ Data.RTCM3: _RTCM3Msg1104 :: Prism' RTCM3Msg (Msg1104, Msg)
+ Data.RTCM3: _RTCM3Msg1105 :: Prism' RTCM3Msg (Msg1105, Msg)
+ Data.RTCM3: _RTCM3Msg1106 :: Prism' RTCM3Msg (Msg1106, Msg)
+ Data.RTCM3: _RTCM3Msg1107 :: Prism' RTCM3Msg (Msg1107, Msg)
+ Data.RTCM3: _RTCM3Msg1114 :: Prism' RTCM3Msg (Msg1114, Msg)
+ Data.RTCM3: _RTCM3Msg1115 :: Prism' RTCM3Msg (Msg1115, Msg)
+ Data.RTCM3: _RTCM3Msg1116 :: Prism' RTCM3Msg (Msg1116, Msg)
+ Data.RTCM3: _RTCM3Msg1117 :: Prism' RTCM3Msg (Msg1117, Msg)
+ Data.RTCM3: _RTCM3Msg1124 :: Prism' RTCM3Msg (Msg1124, Msg)
+ Data.RTCM3: _RTCM3Msg1125 :: Prism' RTCM3Msg (Msg1125, Msg)
+ Data.RTCM3: _RTCM3Msg1126 :: Prism' RTCM3Msg (Msg1126, Msg)
+ Data.RTCM3: _RTCM3Msg1127 :: Prism' RTCM3Msg (Msg1127, Msg)
+ Data.RTCM3.MSM: Msg1074 :: MsmHeader -> Msm46SatelliteData -> Msm4SignalData -> Msg1074
+ Data.RTCM3.MSM: Msg1075 :: MsmHeader -> Msm57SatelliteData -> Msm5SignalData -> Msg1075
+ Data.RTCM3.MSM: Msg1076 :: MsmHeader -> Msm46SatelliteData -> Msm6SignalData -> Msg1076
+ Data.RTCM3.MSM: Msg1077 :: MsmHeader -> Msm57SatelliteData -> Msm7SignalData -> Msg1077
+ Data.RTCM3.MSM: Msg1084 :: MsmHeader -> Msm46SatelliteData -> Msm4SignalData -> Msg1084
+ Data.RTCM3.MSM: Msg1085 :: MsmHeader -> Msm57SatelliteData -> Msm5SignalData -> Msg1085
+ Data.RTCM3.MSM: Msg1086 :: MsmHeader -> Msm46SatelliteData -> Msm6SignalData -> Msg1086
+ Data.RTCM3.MSM: Msg1087 :: MsmHeader -> Msm57SatelliteData -> Msm7SignalData -> Msg1087
+ Data.RTCM3.MSM: Msg1094 :: MsmHeader -> Msm46SatelliteData -> Msm4SignalData -> Msg1094
+ Data.RTCM3.MSM: Msg1095 :: MsmHeader -> Msm57SatelliteData -> Msm5SignalData -> Msg1095
+ Data.RTCM3.MSM: Msg1096 :: MsmHeader -> Msm46SatelliteData -> Msm6SignalData -> Msg1096
+ Data.RTCM3.MSM: Msg1097 :: MsmHeader -> Msm57SatelliteData -> Msm7SignalData -> Msg1097
+ Data.RTCM3.MSM: Msg1104 :: MsmHeader -> Msm46SatelliteData -> Msm4SignalData -> Msg1104
+ Data.RTCM3.MSM: Msg1105 :: MsmHeader -> Msm57SatelliteData -> Msm5SignalData -> Msg1105
+ Data.RTCM3.MSM: Msg1106 :: MsmHeader -> Msm46SatelliteData -> Msm6SignalData -> Msg1106
+ Data.RTCM3.MSM: Msg1107 :: MsmHeader -> Msm57SatelliteData -> Msm7SignalData -> Msg1107
+ Data.RTCM3.MSM: Msg1114 :: MsmHeader -> Msm46SatelliteData -> Msm4SignalData -> Msg1114
+ Data.RTCM3.MSM: Msg1115 :: MsmHeader -> Msm57SatelliteData -> Msm5SignalData -> Msg1115
+ Data.RTCM3.MSM: Msg1116 :: MsmHeader -> Msm46SatelliteData -> Msm6SignalData -> Msg1116
+ Data.RTCM3.MSM: Msg1117 :: MsmHeader -> Msm57SatelliteData -> Msm7SignalData -> Msg1117
+ Data.RTCM3.MSM: Msg1124 :: MsmHeader -> Msm46SatelliteData -> Msm4SignalData -> Msg1124
+ Data.RTCM3.MSM: Msg1125 :: MsmHeader -> Msm57SatelliteData -> Msm5SignalData -> Msg1125
+ Data.RTCM3.MSM: Msg1126 :: MsmHeader -> Msm46SatelliteData -> Msm6SignalData -> Msg1126
+ Data.RTCM3.MSM: Msg1127 :: MsmHeader -> Msm57SatelliteData -> Msm7SignalData -> Msg1127
+ Data.RTCM3.MSM: Msm46SatelliteData :: [Word8] -> [Word16] -> Msm46SatelliteData
+ Data.RTCM3.MSM: Msm4SignalData :: [Int16] -> [Int32] -> [Word8] -> [Bool] -> [Word8] -> Msm4SignalData
+ Data.RTCM3.MSM: Msm57SatelliteData :: [Word8] -> [Word8] -> [Word16] -> [Word16] -> Msm57SatelliteData
+ Data.RTCM3.MSM: Msm5SignalData :: [Int16] -> [Int32] -> [Word8] -> [Bool] -> [Word8] -> [Int16] -> Msm5SignalData
+ Data.RTCM3.MSM: Msm6SignalData :: [Int32] -> [Int32] -> [Word16] -> [Bool] -> [Word16] -> Msm6SignalData
+ Data.RTCM3.MSM: Msm7SignalData :: [Int32] -> [Int32] -> [Word16] -> [Bool] -> [Word16] -> [Int16] -> Msm7SignalData
+ Data.RTCM3.MSM: MsmHeader :: Word16 -> Word16 -> Word32 -> Bool -> Word8 -> Word8 -> Word8 -> Word8 -> Bool -> Word8 -> Word64 -> Word32 -> Word64 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1074_header] :: Msg1074 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1074_satelliteData] :: Msg1074 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1074_signalData] :: Msg1074 -> Msm4SignalData
+ Data.RTCM3.MSM: [_msg1075_header] :: Msg1075 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1075_satelliteData] :: Msg1075 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1075_signalData] :: Msg1075 -> Msm5SignalData
+ Data.RTCM3.MSM: [_msg1076_header] :: Msg1076 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1076_satelliteData] :: Msg1076 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1076_signalData] :: Msg1076 -> Msm6SignalData
+ Data.RTCM3.MSM: [_msg1077_header] :: Msg1077 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1077_satelliteData] :: Msg1077 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1077_signalData] :: Msg1077 -> Msm7SignalData
+ Data.RTCM3.MSM: [_msg1084_header] :: Msg1084 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1084_satelliteData] :: Msg1084 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1084_signalData] :: Msg1084 -> Msm4SignalData
+ Data.RTCM3.MSM: [_msg1085_header] :: Msg1085 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1085_satelliteData] :: Msg1085 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1085_signalData] :: Msg1085 -> Msm5SignalData
+ Data.RTCM3.MSM: [_msg1086_header] :: Msg1086 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1086_satelliteData] :: Msg1086 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1086_signalData] :: Msg1086 -> Msm6SignalData
+ Data.RTCM3.MSM: [_msg1087_header] :: Msg1087 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1087_satelliteData] :: Msg1087 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1087_signalData] :: Msg1087 -> Msm7SignalData
+ Data.RTCM3.MSM: [_msg1094_header] :: Msg1094 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1094_satelliteData] :: Msg1094 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1094_signalData] :: Msg1094 -> Msm4SignalData
+ Data.RTCM3.MSM: [_msg1095_header] :: Msg1095 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1095_satelliteData] :: Msg1095 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1095_signalData] :: Msg1095 -> Msm5SignalData
+ Data.RTCM3.MSM: [_msg1096_header] :: Msg1096 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1096_satelliteData] :: Msg1096 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1096_signalData] :: Msg1096 -> Msm6SignalData
+ Data.RTCM3.MSM: [_msg1097_header] :: Msg1097 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1097_satelliteData] :: Msg1097 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1097_signalData] :: Msg1097 -> Msm7SignalData
+ Data.RTCM3.MSM: [_msg1104_header] :: Msg1104 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1104_satelliteData] :: Msg1104 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1104_signalData] :: Msg1104 -> Msm4SignalData
+ Data.RTCM3.MSM: [_msg1105_header] :: Msg1105 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1105_satelliteData] :: Msg1105 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1105_signalData] :: Msg1105 -> Msm5SignalData
+ Data.RTCM3.MSM: [_msg1106_header] :: Msg1106 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1106_satelliteData] :: Msg1106 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1106_signalData] :: Msg1106 -> Msm6SignalData
+ Data.RTCM3.MSM: [_msg1107_header] :: Msg1107 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1107_satelliteData] :: Msg1107 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1107_signalData] :: Msg1107 -> Msm7SignalData
+ Data.RTCM3.MSM: [_msg1114_header] :: Msg1114 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1114_satelliteData] :: Msg1114 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1114_signalData] :: Msg1114 -> Msm4SignalData
+ Data.RTCM3.MSM: [_msg1115_header] :: Msg1115 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1115_satelliteData] :: Msg1115 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1115_signalData] :: Msg1115 -> Msm5SignalData
+ Data.RTCM3.MSM: [_msg1116_header] :: Msg1116 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1116_satelliteData] :: Msg1116 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1116_signalData] :: Msg1116 -> Msm6SignalData
+ Data.RTCM3.MSM: [_msg1117_header] :: Msg1117 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1117_satelliteData] :: Msg1117 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1117_signalData] :: Msg1117 -> Msm7SignalData
+ Data.RTCM3.MSM: [_msg1124_header] :: Msg1124 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1124_satelliteData] :: Msg1124 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1124_signalData] :: Msg1124 -> Msm4SignalData
+ Data.RTCM3.MSM: [_msg1125_header] :: Msg1125 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1125_satelliteData] :: Msg1125 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1125_signalData] :: Msg1125 -> Msm5SignalData
+ Data.RTCM3.MSM: [_msg1126_header] :: Msg1126 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1126_satelliteData] :: Msg1126 -> Msm46SatelliteData
+ Data.RTCM3.MSM: [_msg1126_signalData] :: Msg1126 -> Msm6SignalData
+ Data.RTCM3.MSM: [_msg1127_header] :: Msg1127 -> MsmHeader
+ Data.RTCM3.MSM: [_msg1127_satelliteData] :: Msg1127 -> Msm57SatelliteData
+ Data.RTCM3.MSM: [_msg1127_signalData] :: Msg1127 -> Msm7SignalData
+ Data.RTCM3.MSM: [_msm46SatelliteData_rangesModulo] :: Msm46SatelliteData -> [Word16]
+ Data.RTCM3.MSM: [_msm46SatelliteData_ranges] :: Msm46SatelliteData -> [Word8]
+ Data.RTCM3.MSM: [_msm4SignalData_cnrs] :: Msm4SignalData -> [Word8]
+ Data.RTCM3.MSM: [_msm4SignalData_halfCycles] :: Msm4SignalData -> [Bool]
+ Data.RTCM3.MSM: [_msm4SignalData_lockTimes] :: Msm4SignalData -> [Word8]
+ Data.RTCM3.MSM: [_msm4SignalData_phaseranges] :: Msm4SignalData -> [Int32]
+ Data.RTCM3.MSM: [_msm4SignalData_pseudoranges] :: Msm4SignalData -> [Int16]
+ Data.RTCM3.MSM: [_msm57SatelliteData_extendeds] :: Msm57SatelliteData -> [Word8]
+ Data.RTCM3.MSM: [_msm57SatelliteData_phaseRangeRates] :: Msm57SatelliteData -> [Word16]
+ Data.RTCM3.MSM: [_msm57SatelliteData_rangesModulo] :: Msm57SatelliteData -> [Word16]
+ Data.RTCM3.MSM: [_msm57SatelliteData_ranges] :: Msm57SatelliteData -> [Word8]
+ Data.RTCM3.MSM: [_msm5SignalData_cnrs] :: Msm5SignalData -> [Word8]
+ Data.RTCM3.MSM: [_msm5SignalData_halfCycles] :: Msm5SignalData -> [Bool]
+ Data.RTCM3.MSM: [_msm5SignalData_lockTimes] :: Msm5SignalData -> [Word8]
+ Data.RTCM3.MSM: [_msm5SignalData_phaseRangeRates] :: Msm5SignalData -> [Int16]
+ Data.RTCM3.MSM: [_msm5SignalData_phaseranges] :: Msm5SignalData -> [Int32]
+ Data.RTCM3.MSM: [_msm5SignalData_pseudoranges] :: Msm5SignalData -> [Int16]
+ Data.RTCM3.MSM: [_msm6SignalData_cnrs] :: Msm6SignalData -> [Word16]
+ Data.RTCM3.MSM: [_msm6SignalData_halfCycles] :: Msm6SignalData -> [Bool]
+ Data.RTCM3.MSM: [_msm6SignalData_lockTimes] :: Msm6SignalData -> [Word16]
+ Data.RTCM3.MSM: [_msm6SignalData_phaseranges] :: Msm6SignalData -> [Int32]
+ Data.RTCM3.MSM: [_msm6SignalData_pseudoranges] :: Msm6SignalData -> [Int32]
+ Data.RTCM3.MSM: [_msm7SignalData_cnrs] :: Msm7SignalData -> [Word16]
+ Data.RTCM3.MSM: [_msm7SignalData_halfCycles] :: Msm7SignalData -> [Bool]
+ Data.RTCM3.MSM: [_msm7SignalData_lockTimes] :: Msm7SignalData -> [Word16]
+ Data.RTCM3.MSM: [_msm7SignalData_phaseRangeRates] :: Msm7SignalData -> [Int16]
+ Data.RTCM3.MSM: [_msm7SignalData_phaseranges] :: Msm7SignalData -> [Int32]
+ Data.RTCM3.MSM: [_msm7SignalData_pseudoranges] :: Msm7SignalData -> [Int32]
+ Data.RTCM3.MSM: [_msmHeader_cellMask] :: MsmHeader -> Word64
+ Data.RTCM3.MSM: [_msmHeader_clockSteering] :: MsmHeader -> Word8
+ Data.RTCM3.MSM: [_msmHeader_epoch] :: MsmHeader -> Word32
+ Data.RTCM3.MSM: [_msmHeader_externalClock] :: MsmHeader -> Word8
+ Data.RTCM3.MSM: [_msmHeader_iods] :: MsmHeader -> Word8
+ Data.RTCM3.MSM: [_msmHeader_multiple] :: MsmHeader -> Bool
+ Data.RTCM3.MSM: [_msmHeader_num] :: MsmHeader -> Word16
+ Data.RTCM3.MSM: [_msmHeader_reserved] :: MsmHeader -> Word8
+ Data.RTCM3.MSM: [_msmHeader_satelliteMask] :: MsmHeader -> Word64
+ Data.RTCM3.MSM: [_msmHeader_signalMask] :: MsmHeader -> Word32
+ Data.RTCM3.MSM: [_msmHeader_smoothingInterval] :: MsmHeader -> Word8
+ Data.RTCM3.MSM: [_msmHeader_smoothing] :: MsmHeader -> Bool
+ Data.RTCM3.MSM: [_msmHeader_station] :: MsmHeader -> Word16
+ Data.RTCM3.MSM: data Msg1074
+ Data.RTCM3.MSM: data Msg1075
+ Data.RTCM3.MSM: data Msg1076
+ Data.RTCM3.MSM: data Msg1077
+ Data.RTCM3.MSM: data Msg1084
+ Data.RTCM3.MSM: data Msg1085
+ Data.RTCM3.MSM: data Msg1086
+ Data.RTCM3.MSM: data Msg1087
+ Data.RTCM3.MSM: data Msg1094
+ Data.RTCM3.MSM: data Msg1095
+ Data.RTCM3.MSM: data Msg1096
+ Data.RTCM3.MSM: data Msg1097
+ Data.RTCM3.MSM: data Msg1104
+ Data.RTCM3.MSM: data Msg1105
+ Data.RTCM3.MSM: data Msg1106
+ Data.RTCM3.MSM: data Msg1107
+ Data.RTCM3.MSM: data Msg1114
+ Data.RTCM3.MSM: data Msg1115
+ Data.RTCM3.MSM: data Msg1116
+ Data.RTCM3.MSM: data Msg1117
+ Data.RTCM3.MSM: data Msg1124
+ Data.RTCM3.MSM: data Msg1125
+ Data.RTCM3.MSM: data Msg1126
+ Data.RTCM3.MSM: data Msg1127
+ Data.RTCM3.MSM: data Msm46SatelliteData
+ Data.RTCM3.MSM: data Msm4SignalData
+ Data.RTCM3.MSM: data Msm57SatelliteData
+ Data.RTCM3.MSM: data Msm5SignalData
+ Data.RTCM3.MSM: data Msm6SignalData
+ Data.RTCM3.MSM: data Msm7SignalData
+ Data.RTCM3.MSM: data MsmHeader
+ Data.RTCM3.MSM: getBitsMsm46SatelliteData :: Int -> BitGet Msm46SatelliteData
+ Data.RTCM3.MSM: getBitsMsm4SignalData :: Int -> BitGet Msm4SignalData
+ Data.RTCM3.MSM: getBitsMsm57SatelliteData :: Int -> BitGet Msm57SatelliteData
+ Data.RTCM3.MSM: getBitsMsm5SignalData :: Int -> BitGet Msm5SignalData
+ Data.RTCM3.MSM: getBitsMsm6SignalData :: Int -> BitGet Msm6SignalData
+ Data.RTCM3.MSM: getBitsMsm7SignalData :: Int -> BitGet Msm7SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msm46SatelliteData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msm4SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msm57SatelliteData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msm5SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msm6SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.Msm7SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.FromJSON.FromJSON Data.RTCM3.MSM.MsmHeader
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msm46SatelliteData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msm4SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msm57SatelliteData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msm5SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msm6SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.Msm7SignalData
+ Data.RTCM3.MSM: instance Data.Aeson.Types.ToJSON.ToJSON Data.RTCM3.MSM.MsmHeader
+ Data.RTCM3.MSM: instance Data.Binary.Bits.BinaryBit Data.RTCM3.MSM.MsmHeader
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance Data.Binary.Class.Binary Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance Data.RTCM3.Types.ToRTCM3 Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msm46SatelliteData
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msm4SignalData
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msm57SatelliteData
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msm5SignalData
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msm6SignalData
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.Msm7SignalData
+ Data.RTCM3.MSM: instance GHC.Classes.Eq Data.RTCM3.MSM.MsmHeader
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msm46SatelliteData
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msm4SignalData
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msm57SatelliteData
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msm5SignalData
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msm6SignalData
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.Msm7SignalData
+ Data.RTCM3.MSM: instance GHC.Read.Read Data.RTCM3.MSM.MsmHeader
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1074
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1075
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1076
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1077
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1084
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1085
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1086
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1087
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1094
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1095
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1096
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1097
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1104
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1105
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1106
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1107
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1114
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1115
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1116
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1117
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1124
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1125
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1126
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msg1127
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msm46SatelliteData
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msm4SignalData
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msm57SatelliteData
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msm5SignalData
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msm6SignalData
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.Msm7SignalData
+ Data.RTCM3.MSM: instance GHC.Show.Show Data.RTCM3.MSM.MsmHeader
+ Data.RTCM3.MSM: msg1074 :: Word16
+ Data.RTCM3.MSM: msg1074_header :: Lens' Msg1074 MsmHeader
+ Data.RTCM3.MSM: msg1074_satelliteData :: Lens' Msg1074 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1074_signalData :: Lens' Msg1074 Msm4SignalData
+ Data.RTCM3.MSM: msg1075 :: Word16
+ Data.RTCM3.MSM: msg1075_header :: Lens' Msg1075 MsmHeader
+ Data.RTCM3.MSM: msg1075_satelliteData :: Lens' Msg1075 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1075_signalData :: Lens' Msg1075 Msm5SignalData
+ Data.RTCM3.MSM: msg1076 :: Word16
+ Data.RTCM3.MSM: msg1076_header :: Lens' Msg1076 MsmHeader
+ Data.RTCM3.MSM: msg1076_satelliteData :: Lens' Msg1076 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1076_signalData :: Lens' Msg1076 Msm6SignalData
+ Data.RTCM3.MSM: msg1077 :: Word16
+ Data.RTCM3.MSM: msg1077_header :: Lens' Msg1077 MsmHeader
+ Data.RTCM3.MSM: msg1077_satelliteData :: Lens' Msg1077 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1077_signalData :: Lens' Msg1077 Msm7SignalData
+ Data.RTCM3.MSM: msg1084 :: Word16
+ Data.RTCM3.MSM: msg1084_header :: Lens' Msg1084 MsmHeader
+ Data.RTCM3.MSM: msg1084_satelliteData :: Lens' Msg1084 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1084_signalData :: Lens' Msg1084 Msm4SignalData
+ Data.RTCM3.MSM: msg1085 :: Word16
+ Data.RTCM3.MSM: msg1085_header :: Lens' Msg1085 MsmHeader
+ Data.RTCM3.MSM: msg1085_satelliteData :: Lens' Msg1085 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1085_signalData :: Lens' Msg1085 Msm5SignalData
+ Data.RTCM3.MSM: msg1086 :: Word16
+ Data.RTCM3.MSM: msg1086_header :: Lens' Msg1086 MsmHeader
+ Data.RTCM3.MSM: msg1086_satelliteData :: Lens' Msg1086 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1086_signalData :: Lens' Msg1086 Msm6SignalData
+ Data.RTCM3.MSM: msg1087 :: Word16
+ Data.RTCM3.MSM: msg1087_header :: Lens' Msg1087 MsmHeader
+ Data.RTCM3.MSM: msg1087_satelliteData :: Lens' Msg1087 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1087_signalData :: Lens' Msg1087 Msm7SignalData
+ Data.RTCM3.MSM: msg1094 :: Word16
+ Data.RTCM3.MSM: msg1094_header :: Lens' Msg1094 MsmHeader
+ Data.RTCM3.MSM: msg1094_satelliteData :: Lens' Msg1094 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1094_signalData :: Lens' Msg1094 Msm4SignalData
+ Data.RTCM3.MSM: msg1095 :: Word16
+ Data.RTCM3.MSM: msg1095_header :: Lens' Msg1095 MsmHeader
+ Data.RTCM3.MSM: msg1095_satelliteData :: Lens' Msg1095 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1095_signalData :: Lens' Msg1095 Msm5SignalData
+ Data.RTCM3.MSM: msg1096 :: Word16
+ Data.RTCM3.MSM: msg1096_header :: Lens' Msg1096 MsmHeader
+ Data.RTCM3.MSM: msg1096_satelliteData :: Lens' Msg1096 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1096_signalData :: Lens' Msg1096 Msm6SignalData
+ Data.RTCM3.MSM: msg1097 :: Word16
+ Data.RTCM3.MSM: msg1097_header :: Lens' Msg1097 MsmHeader
+ Data.RTCM3.MSM: msg1097_satelliteData :: Lens' Msg1097 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1097_signalData :: Lens' Msg1097 Msm7SignalData
+ Data.RTCM3.MSM: msg1104 :: Word16
+ Data.RTCM3.MSM: msg1104_header :: Lens' Msg1104 MsmHeader
+ Data.RTCM3.MSM: msg1104_satelliteData :: Lens' Msg1104 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1104_signalData :: Lens' Msg1104 Msm4SignalData
+ Data.RTCM3.MSM: msg1105 :: Word16
+ Data.RTCM3.MSM: msg1105_header :: Lens' Msg1105 MsmHeader
+ Data.RTCM3.MSM: msg1105_satelliteData :: Lens' Msg1105 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1105_signalData :: Lens' Msg1105 Msm5SignalData
+ Data.RTCM3.MSM: msg1106 :: Word16
+ Data.RTCM3.MSM: msg1106_header :: Lens' Msg1106 MsmHeader
+ Data.RTCM3.MSM: msg1106_satelliteData :: Lens' Msg1106 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1106_signalData :: Lens' Msg1106 Msm6SignalData
+ Data.RTCM3.MSM: msg1107 :: Word16
+ Data.RTCM3.MSM: msg1107_header :: Lens' Msg1107 MsmHeader
+ Data.RTCM3.MSM: msg1107_satelliteData :: Lens' Msg1107 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1107_signalData :: Lens' Msg1107 Msm7SignalData
+ Data.RTCM3.MSM: msg1114 :: Word16
+ Data.RTCM3.MSM: msg1114_header :: Lens' Msg1114 MsmHeader
+ Data.RTCM3.MSM: msg1114_satelliteData :: Lens' Msg1114 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1114_signalData :: Lens' Msg1114 Msm4SignalData
+ Data.RTCM3.MSM: msg1115 :: Word16
+ Data.RTCM3.MSM: msg1115_header :: Lens' Msg1115 MsmHeader
+ Data.RTCM3.MSM: msg1115_satelliteData :: Lens' Msg1115 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1115_signalData :: Lens' Msg1115 Msm5SignalData
+ Data.RTCM3.MSM: msg1116 :: Word16
+ Data.RTCM3.MSM: msg1116_header :: Lens' Msg1116 MsmHeader
+ Data.RTCM3.MSM: msg1116_satelliteData :: Lens' Msg1116 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1116_signalData :: Lens' Msg1116 Msm6SignalData
+ Data.RTCM3.MSM: msg1117 :: Word16
+ Data.RTCM3.MSM: msg1117_header :: Lens' Msg1117 MsmHeader
+ Data.RTCM3.MSM: msg1117_satelliteData :: Lens' Msg1117 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1117_signalData :: Lens' Msg1117 Msm7SignalData
+ Data.RTCM3.MSM: msg1124 :: Word16
+ Data.RTCM3.MSM: msg1124_header :: Lens' Msg1124 MsmHeader
+ Data.RTCM3.MSM: msg1124_satelliteData :: Lens' Msg1124 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1124_signalData :: Lens' Msg1124 Msm4SignalData
+ Data.RTCM3.MSM: msg1125 :: Word16
+ Data.RTCM3.MSM: msg1125_header :: Lens' Msg1125 MsmHeader
+ Data.RTCM3.MSM: msg1125_satelliteData :: Lens' Msg1125 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1125_signalData :: Lens' Msg1125 Msm5SignalData
+ Data.RTCM3.MSM: msg1126 :: Word16
+ Data.RTCM3.MSM: msg1126_header :: Lens' Msg1126 MsmHeader
+ Data.RTCM3.MSM: msg1126_satelliteData :: Lens' Msg1126 Msm46SatelliteData
+ Data.RTCM3.MSM: msg1126_signalData :: Lens' Msg1126 Msm6SignalData
+ Data.RTCM3.MSM: msg1127 :: Word16
+ Data.RTCM3.MSM: msg1127_header :: Lens' Msg1127 MsmHeader
+ Data.RTCM3.MSM: msg1127_satelliteData :: Lens' Msg1127 Msm57SatelliteData
+ Data.RTCM3.MSM: msg1127_signalData :: Lens' Msg1127 Msm7SignalData
+ Data.RTCM3.MSM: msm46SatelliteData_ranges :: Lens' Msm46SatelliteData [Word8]
+ Data.RTCM3.MSM: msm46SatelliteData_rangesModulo :: Lens' Msm46SatelliteData [Word16]
+ Data.RTCM3.MSM: msm4SignalData_cnrs :: Lens' Msm4SignalData [Word8]
+ Data.RTCM3.MSM: msm4SignalData_halfCycles :: Lens' Msm4SignalData [Bool]
+ Data.RTCM3.MSM: msm4SignalData_lockTimes :: Lens' Msm4SignalData [Word8]
+ Data.RTCM3.MSM: msm4SignalData_phaseranges :: Lens' Msm4SignalData [Int32]
+ Data.RTCM3.MSM: msm4SignalData_pseudoranges :: Lens' Msm4SignalData [Int16]
+ Data.RTCM3.MSM: msm57SatelliteData_extendeds :: Lens' Msm57SatelliteData [Word8]
+ Data.RTCM3.MSM: msm57SatelliteData_phaseRangeRates :: Lens' Msm57SatelliteData [Word16]
+ Data.RTCM3.MSM: msm57SatelliteData_ranges :: Lens' Msm57SatelliteData [Word8]
+ Data.RTCM3.MSM: msm57SatelliteData_rangesModulo :: Lens' Msm57SatelliteData [Word16]
+ Data.RTCM3.MSM: msm5SignalData_cnrs :: Lens' Msm5SignalData [Word8]
+ Data.RTCM3.MSM: msm5SignalData_halfCycles :: Lens' Msm5SignalData [Bool]
+ Data.RTCM3.MSM: msm5SignalData_lockTimes :: Lens' Msm5SignalData [Word8]
+ Data.RTCM3.MSM: msm5SignalData_phaseRangeRates :: Lens' Msm5SignalData [Int16]
+ Data.RTCM3.MSM: msm5SignalData_phaseranges :: Lens' Msm5SignalData [Int32]
+ Data.RTCM3.MSM: msm5SignalData_pseudoranges :: Lens' Msm5SignalData [Int16]
+ Data.RTCM3.MSM: msm6SignalData_cnrs :: Lens' Msm6SignalData [Word16]
+ Data.RTCM3.MSM: msm6SignalData_halfCycles :: Lens' Msm6SignalData [Bool]
+ Data.RTCM3.MSM: msm6SignalData_lockTimes :: Lens' Msm6SignalData [Word16]
+ Data.RTCM3.MSM: msm6SignalData_phaseranges :: Lens' Msm6SignalData [Int32]
+ Data.RTCM3.MSM: msm6SignalData_pseudoranges :: Lens' Msm6SignalData [Int32]
+ Data.RTCM3.MSM: msm7SignalData_cnrs :: Lens' Msm7SignalData [Word16]
+ Data.RTCM3.MSM: msm7SignalData_halfCycles :: Lens' Msm7SignalData [Bool]
+ Data.RTCM3.MSM: msm7SignalData_lockTimes :: Lens' Msm7SignalData [Word16]
+ Data.RTCM3.MSM: msm7SignalData_phaseRangeRates :: Lens' Msm7SignalData [Int16]
+ Data.RTCM3.MSM: msm7SignalData_phaseranges :: Lens' Msm7SignalData [Int32]
+ Data.RTCM3.MSM: msm7SignalData_pseudoranges :: Lens' Msm7SignalData [Int32]
+ Data.RTCM3.MSM: msmHeader_cellMask :: Lens' MsmHeader Word64
+ Data.RTCM3.MSM: msmHeader_clockSteering :: Lens' MsmHeader Word8
+ Data.RTCM3.MSM: msmHeader_epoch :: Lens' MsmHeader Word32
+ Data.RTCM3.MSM: msmHeader_externalClock :: Lens' MsmHeader Word8
+ Data.RTCM3.MSM: msmHeader_iods :: Lens' MsmHeader Word8
+ Data.RTCM3.MSM: msmHeader_multiple :: Lens' MsmHeader Bool
+ Data.RTCM3.MSM: msmHeader_num :: Lens' MsmHeader Word16
+ Data.RTCM3.MSM: msmHeader_reserved :: Lens' MsmHeader Word8
+ Data.RTCM3.MSM: msmHeader_satelliteMask :: Lens' MsmHeader Word64
+ Data.RTCM3.MSM: msmHeader_signalMask :: Lens' MsmHeader Word32
+ Data.RTCM3.MSM: msmHeader_smoothing :: Lens' MsmHeader Bool
+ Data.RTCM3.MSM: msmHeader_smoothingInterval :: Lens' MsmHeader Word8
+ Data.RTCM3.MSM: msmHeader_station :: Lens' MsmHeader Word16
+ Data.RTCM3.MSM: putBitsMsm46SatelliteData :: Msm46SatelliteData -> BitPut ()
+ Data.RTCM3.MSM: putBitsMsm4SignalData :: Msm4SignalData -> BitPut ()
+ Data.RTCM3.MSM: putBitsMsm57SatelliteData :: Msm57SatelliteData -> BitPut ()
+ Data.RTCM3.MSM: putBitsMsm5SignalData :: Msm5SignalData -> BitPut ()
+ Data.RTCM3.MSM: putBitsMsm6SignalData :: Msm6SignalData -> BitPut ()
+ Data.RTCM3.MSM: putBitsMsm7SignalData :: Msm7SignalData -> BitPut ()
- Data.RTCM3.Types: class HasMsg c_alLu
+ Data.RTCM3.Types: class HasMsg c_alSk
- Data.RTCM3.Types: msg :: HasMsg c_alLu => Lens' c_alLu Msg
+ Data.RTCM3.Types: msg :: HasMsg c_alSk => Lens' c_alSk Msg
- Data.RTCM3.Types: msgRTCM3Crc :: HasMsg c_alLu => Lens' c_alLu Word24
+ Data.RTCM3.Types: msgRTCM3Crc :: HasMsg c_alSk => Lens' c_alSk Word24
- Data.RTCM3.Types: msgRTCM3Len :: HasMsg c_alLu => Lens' c_alLu Word16
+ Data.RTCM3.Types: msgRTCM3Len :: HasMsg c_alSk => Lens' c_alSk Word16
- Data.RTCM3.Types: msgRTCM3Payload :: HasMsg c_alLu => Lens' c_alLu Bytes
+ Data.RTCM3.Types: msgRTCM3Payload :: HasMsg c_alSk => Lens' c_alSk Bytes

Files

rtcm.cabal view
@@ -1,6 +1,6 @@ cabal-version: >=1.22 name: rtcm-version: 0.2.16+version: 0.2.17 license: BSD3 copyright: Copyright (C) 2015-2017 Swift Navigation, Inc. maintainer: Swift Navigation <dev@swift-nav.com>@@ -26,6 +26,7 @@         Data.RTCM3.Antennas         Data.RTCM3.Ephemerides         Data.RTCM3.Internal+        Data.RTCM3.MSM         Data.RTCM3.Observations         Data.RTCM3.SSR         Data.RTCM3.System@@ -89,6 +90,7 @@         Test.Data.RTCM3.Antennas         Test.Data.RTCM3.Ephemerides         Test.Data.RTCM3.Extras+        Test.Data.RTCM3.MSM         Test.Data.RTCM3.Observations         Test.Data.RTCM3.SSR         Test.Data.RTCM3.System
src/Data/RTCM3.hs view
@@ -26,6 +26,7 @@ import Data.ByteString.Lazy import Data.RTCM3.Antennas     as Export import Data.RTCM3.Ephemerides  as Export+import Data.RTCM3.MSM          as Export import Data.RTCM3.Observations as Export import Data.RTCM3.SSR          as Export import Data.RTCM3.System       as Export@@ -61,6 +62,30 @@    | RTCM3Msg1064    Msg1064 Msg    | RTCM3Msg1065    Msg1065 Msg    | RTCM3Msg1066    Msg1066 Msg+   | RTCM3Msg1074    Msg1074 Msg+   | RTCM3Msg1075    Msg1075 Msg+   | RTCM3Msg1076    Msg1076 Msg+   | RTCM3Msg1077    Msg1077 Msg+   | RTCM3Msg1084    Msg1084 Msg+   | RTCM3Msg1085    Msg1085 Msg+   | RTCM3Msg1086    Msg1086 Msg+   | RTCM3Msg1087    Msg1087 Msg+   | RTCM3Msg1094    Msg1094 Msg+   | RTCM3Msg1095    Msg1095 Msg+   | RTCM3Msg1096    Msg1096 Msg+   | RTCM3Msg1097    Msg1097 Msg+   | RTCM3Msg1104    Msg1104 Msg+   | RTCM3Msg1105    Msg1105 Msg+   | RTCM3Msg1106    Msg1106 Msg+   | RTCM3Msg1107    Msg1107 Msg+   | RTCM3Msg1114    Msg1114 Msg+   | RTCM3Msg1115    Msg1115 Msg+   | RTCM3Msg1116    Msg1116 Msg+   | RTCM3Msg1117    Msg1117 Msg+   | RTCM3Msg1124    Msg1124 Msg+   | RTCM3Msg1125    Msg1125 Msg+   | RTCM3Msg1126    Msg1126 Msg+   | RTCM3Msg1127    Msg1127 Msg    | RTCM3Msg1230    Msg1230 Msg    | RTCM3Msg1265    Msg1265 Msg    | RTCM3Msg1266    Msg1266 Msg@@ -104,6 +129,30 @@           | num == msg1064 = RTCM3Msg1064 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m           | num == msg1065 = RTCM3Msg1065 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m           | num == msg1066 = RTCM3Msg1066 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1074 = RTCM3Msg1074 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1075 = RTCM3Msg1075 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1076 = RTCM3Msg1076 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1077 = RTCM3Msg1077 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1084 = RTCM3Msg1084 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1085 = RTCM3Msg1085 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1086 = RTCM3Msg1086 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1087 = RTCM3Msg1087 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1094 = RTCM3Msg1094 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1095 = RTCM3Msg1095 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1096 = RTCM3Msg1096 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1097 = RTCM3Msg1097 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1104 = RTCM3Msg1104 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1105 = RTCM3Msg1105 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1106 = RTCM3Msg1106 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1107 = RTCM3Msg1107 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1114 = RTCM3Msg1114 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1115 = RTCM3Msg1125 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1116 = RTCM3Msg1116 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1117 = RTCM3Msg1117 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1124 = RTCM3Msg1124 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1125 = RTCM3Msg1125 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1126 = RTCM3Msg1126 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m+          | num == msg1127 = RTCM3Msg1127 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m           | num == msg1230 = RTCM3Msg1230 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m           | num == msg1265 = RTCM3Msg1265 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m           | num == msg1266 = RTCM3Msg1266 (decode $ fromStrict $ unBytes _msgRTCM3Payload) m@@ -139,6 +188,30 @@       encoder (RTCM3Msg1064    _n m) = put m       encoder (RTCM3Msg1065    _n m) = put m       encoder (RTCM3Msg1066    _n m) = put m+      encoder (RTCM3Msg1074    _n m) = put m+      encoder (RTCM3Msg1075    _n m) = put m+      encoder (RTCM3Msg1076    _n m) = put m+      encoder (RTCM3Msg1077    _n m) = put m+      encoder (RTCM3Msg1084    _n m) = put m+      encoder (RTCM3Msg1085    _n m) = put m+      encoder (RTCM3Msg1086    _n m) = put m+      encoder (RTCM3Msg1087    _n m) = put m+      encoder (RTCM3Msg1094    _n m) = put m+      encoder (RTCM3Msg1095    _n m) = put m+      encoder (RTCM3Msg1096    _n m) = put m+      encoder (RTCM3Msg1097    _n m) = put m+      encoder (RTCM3Msg1104    _n m) = put m+      encoder (RTCM3Msg1105    _n m) = put m+      encoder (RTCM3Msg1106    _n m) = put m+      encoder (RTCM3Msg1107    _n m) = put m+      encoder (RTCM3Msg1114    _n m) = put m+      encoder (RTCM3Msg1115    _n m) = put m+      encoder (RTCM3Msg1116    _n m) = put m+      encoder (RTCM3Msg1117    _n m) = put m+      encoder (RTCM3Msg1124    _n m) = put m+      encoder (RTCM3Msg1125    _n m) = put m+      encoder (RTCM3Msg1126    _n m) = put m+      encoder (RTCM3Msg1127    _n m) = put m       encoder (RTCM3Msg1230    _n m) = put m       encoder (RTCM3Msg1265    _n m) = put m       encoder (RTCM3Msg1266    _n m) = put m@@ -172,6 +245,30 @@   msg f (RTCM3Msg1064    n m) = RTCM3Msg1064    n <$> f m   msg f (RTCM3Msg1065    n m) = RTCM3Msg1065    n <$> f m   msg f (RTCM3Msg1066    n m) = RTCM3Msg1066    n <$> f m+  msg f (RTCM3Msg1074    n m) = RTCM3Msg1074    n <$> f m+  msg f (RTCM3Msg1075    n m) = RTCM3Msg1075    n <$> f m+  msg f (RTCM3Msg1076    n m) = RTCM3Msg1076    n <$> f m+  msg f (RTCM3Msg1077    n m) = RTCM3Msg1077    n <$> f m+  msg f (RTCM3Msg1084    n m) = RTCM3Msg1084    n <$> f m+  msg f (RTCM3Msg1085    n m) = RTCM3Msg1085    n <$> f m+  msg f (RTCM3Msg1086    n m) = RTCM3Msg1086    n <$> f m+  msg f (RTCM3Msg1087    n m) = RTCM3Msg1087    n <$> f m+  msg f (RTCM3Msg1094    n m) = RTCM3Msg1094    n <$> f m+  msg f (RTCM3Msg1095    n m) = RTCM3Msg1095    n <$> f m+  msg f (RTCM3Msg1096    n m) = RTCM3Msg1096    n <$> f m+  msg f (RTCM3Msg1097    n m) = RTCM3Msg1097    n <$> f m+  msg f (RTCM3Msg1104    n m) = RTCM3Msg1104    n <$> f m+  msg f (RTCM3Msg1105    n m) = RTCM3Msg1105    n <$> f m+  msg f (RTCM3Msg1106    n m) = RTCM3Msg1106    n <$> f m+  msg f (RTCM3Msg1107    n m) = RTCM3Msg1107    n <$> f m+  msg f (RTCM3Msg1114    n m) = RTCM3Msg1114    n <$> f m+  msg f (RTCM3Msg1115    n m) = RTCM3Msg1115    n <$> f m+  msg f (RTCM3Msg1116    n m) = RTCM3Msg1116    n <$> f m+  msg f (RTCM3Msg1117    n m) = RTCM3Msg1117    n <$> f m+  msg f (RTCM3Msg1124    n m) = RTCM3Msg1124    n <$> f m+  msg f (RTCM3Msg1125    n m) = RTCM3Msg1125    n <$> f m+  msg f (RTCM3Msg1126    n m) = RTCM3Msg1126    n <$> f m+  msg f (RTCM3Msg1127    n m) = RTCM3Msg1127    n <$> f m   msg f (RTCM3Msg1230    n m) = RTCM3Msg1230    n <$> f m   msg f (RTCM3Msg1265    n m) = RTCM3Msg1265    n <$> f m   msg f (RTCM3Msg1266    n m) = RTCM3Msg1266    n <$> f m@@ -211,6 +308,30 @@   toJSON (RTCM3Msg1064    n m) = toJSON n <<>> toJSON m   toJSON (RTCM3Msg1065    n m) = toJSON n <<>> toJSON m   toJSON (RTCM3Msg1066    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1074    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1075    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1076    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1077    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1084    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1085    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1086    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1087    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1094    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1095    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1096    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1097    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1104    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1105    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1106    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1107    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1114    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1115    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1116    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1117    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1124    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1125    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1126    n m) = toJSON n <<>> toJSON m+  toJSON (RTCM3Msg1127    n m) = toJSON n <<>> toJSON m   toJSON (RTCM3Msg1230    n m) = toJSON n <<>> toJSON m   toJSON (RTCM3Msg1265    n m) = toJSON n <<>> toJSON m   toJSON (RTCM3Msg1266    n m) = toJSON n <<>> toJSON m@@ -248,6 +369,7 @@         | num == msg1064 = RTCM3Msg1064 <$> pure (decode $ fromStrict $ unBytes payload) <*> parseJSON obj         | num == msg1065 = RTCM3Msg1065 <$> pure (decode $ fromStrict $ unBytes payload) <*> parseJSON obj         | num == msg1066 = RTCM3Msg1066 <$> pure (decode $ fromStrict $ unBytes payload) <*> parseJSON obj+        | num == msg1074 = RTCM3Msg1074 <$> pure (decode $ fromStrict $ unBytes payload) <*> parseJSON obj         | num == msg1230 = RTCM3Msg1230 <$> pure (decode $ fromStrict $ unBytes payload) <*> parseJSON obj         | num == msg1265 = RTCM3Msg1265 <$> pure (decode $ fromStrict $ unBytes payload) <*> parseJSON obj         | otherwise = RTCM3MsgUnknown <$> pure num <*> parseJSON obj
+ src/Data/RTCM3/MSM.hs view
@@ -0,0 +1,1173 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE RecordWildCards   #-}+{-# LANGUAGE TemplateHaskell   #-}++-- |+-- Module:      Data.RTCM3.MSM+-- Copyright:   Copyright (C) 2018 Swift Navigation, Inc.+-- License:     LGPL-3+-- Maintainer:  Swift Navigation <dev@swiftnav.com>+-- Stability:   experimental+-- Portability: portable+--+-- RTCMv3 messages for Multiple Signal Messages.++module Data.RTCM3.MSM+  ( module Data.RTCM3.MSM+  ) where++import           BasicPrelude+import           Control.Lens+import           Data.Aeson.TH+import           Data.Binary+import           Data.Binary.Bits+import qualified Data.Binary.Bits.Get as B+import qualified Data.Binary.Bits.Put as B+import           Data.Bits+import           Data.Int+import           Data.RTCM3.Extras+import           Data.RTCM3.TH++{-# ANN module ("HLint: ignore Use camelCase"::String) #-}++-- | MsmHeader.+--+-- MSM observation header.+data MsmHeader = MsmHeader+  { _msmHeader_num               :: Word16+    -- ^ Message number.+  , _msmHeader_station           :: Word16+    -- ^ Reference station id.+  , _msmHeader_epoch             :: Word32+    -- ^ GNSS epoch time.+  , _msmHeader_multiple          :: Bool+    -- ^ Multiple message indicator.+  , _msmHeader_iods              :: Word8+    -- ^ Issue of data station.+  , _msmHeader_reserved          :: Word8+    -- ^ Reserved.+  , _msmHeader_clockSteering     :: Word8+    -- ^ Clock steering indicator.+  , _msmHeader_externalClock     :: Word8+    -- ^ External clock indicator.+  , _msmHeader_smoothing         :: Bool+    -- ^ GNSS divergence-free smoothing indicator.+  , _msmHeader_smoothingInterval :: Word8+    -- ^ GNSS smoothing interval.+  , _msmHeader_satelliteMask     :: Word64+    -- ^ GNSS satellite mask.+  , _msmHeader_signalMask        :: Word32+    -- ^ GNSS signal mask.+  , _msmHeader_cellMask          :: Word64+    -- ^ GNSS cell mask.+  } deriving ( Show, Read, Eq )++$(makeLenses ''MsmHeader)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msmHeader_" . stripPrefix "_msmHeader_"} ''MsmHeader)++instance BinaryBit MsmHeader where+  getBits _n = do+    _msmHeader_num               <- B.getWord16be 12+    _msmHeader_station           <- B.getWord16be 12+    _msmHeader_epoch             <- B.getWord32be 30+    _msmHeader_multiple          <- B.getBool+    _msmHeader_iods              <- B.getWord8 3+    _msmHeader_reserved          <- B.getWord8 7+    _msmHeader_clockSteering     <- B.getWord8 2+    _msmHeader_externalClock     <- B.getWord8 2+    _msmHeader_smoothing         <- B.getBool+    _msmHeader_smoothingInterval <- B.getWord8 3+    _msmHeader_satelliteMask     <- B.getWord64be 64+    _msmHeader_signalMask        <- B.getWord32be 32+    let x = min 64 $ popCount _msmHeader_satelliteMask * popCount _msmHeader_signalMask+    _msmHeader_cellMask          <- B.getWord64be x+    pure MsmHeader {..}++  putBits _n MsmHeader {..} = do+    B.putWord16be 12 _msmHeader_num+    B.putWord16be 12 _msmHeader_station+    B.putWord32be 30 _msmHeader_epoch+    B.putBool        _msmHeader_multiple+    B.putWord8 3     _msmHeader_iods+    B.putWord8 7     _msmHeader_reserved+    B.putWord8 2     _msmHeader_clockSteering+    B.putWord8 2     _msmHeader_externalClock+    B.putBool        _msmHeader_smoothing+    B.putWord8 3     _msmHeader_smoothingInterval+    B.putWord64be 64 _msmHeader_satelliteMask+    B.putWord32be 32 _msmHeader_signalMask+    let x = min 64 $ popCount _msmHeader_satelliteMask * popCount _msmHeader_signalMask+    B.putWord64be x  _msmHeader_cellMask++-- | Msm46SatelliteData.+--+-- MSM46 satellite data.+data Msm46SatelliteData = Msm46SatelliteData+  { _msm46SatelliteData_ranges       :: [Word8]+    -- ^ The number of integer milliseconds in GNSS Satellite rough ranges.+  , _msm46SatelliteData_rangesModulo :: [Word16]+    -- ^ GNSS Satellite rough ranges modulo 1 millisecond.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msm46SatelliteData)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msm46SatelliteData_" . stripPrefix "_msm46SatelliteData_"} ''Msm46SatelliteData)++-- | Get Bits for Msm4SatelliteData.+--+getBitsMsm46SatelliteData :: Int -> B.BitGet Msm46SatelliteData+getBitsMsm46SatelliteData n = do+  _msm46SatelliteData_ranges       <- replicateM n $ B.getWord8 8+  _msm46SatelliteData_rangesModulo <- replicateM n $ B.getWord16be 10+  pure Msm46SatelliteData {..}++-- | Put Bits for Msm46SatelliteData.+--+putBitsMsm46SatelliteData :: Msm46SatelliteData -> B.BitPut ()+putBitsMsm46SatelliteData Msm46SatelliteData {..} = do+  forM_ _msm46SatelliteData_ranges $ B.putWord8 8+  forM_ _msm46SatelliteData_rangesModulo $ B.putWord16be 10++-- | Msm57SatelliteData+--+-- MSM57 satellite data.+data Msm57SatelliteData = Msm57SatelliteData+  { _msm57SatelliteData_ranges          :: [Word8]+    -- ^ The number of integer milliseconds in GNSS Satellite rough ranges.+  , _msm57SatelliteData_extendeds       :: [Word8]+    -- ^ Extended satellite information.+  , _msm57SatelliteData_rangesModulo    :: [Word16]+    -- ^ GNSS Satellite rough ranges modulo 1 millisecond.+  , _msm57SatelliteData_phaseRangeRates :: [Word16]+    -- ^ GNSS Satellite rough PhaseRangeRates.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msm57SatelliteData)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msm57SatelliteData_" . stripPrefix "_msm57SatelliteData_"} ''Msm57SatelliteData)++-- | Get Bits for Msm57SatelliteData.+--+getBitsMsm57SatelliteData :: Int -> B.BitGet Msm57SatelliteData+getBitsMsm57SatelliteData n = do+  _msm57SatelliteData_ranges          <- replicateM n $ B.getWord8 8+  _msm57SatelliteData_extendeds       <- replicateM n $ B.getWord8 4+  _msm57SatelliteData_rangesModulo    <- replicateM n $ B.getWord16be 10+  _msm57SatelliteData_phaseRangeRates <- replicateM n $ B.getWord16be 14+  pure Msm57SatelliteData {..}++-- | Put Bits for Msm4SatelliteData.+--+putBitsMsm57SatelliteData :: Msm57SatelliteData -> B.BitPut ()+putBitsMsm57SatelliteData Msm57SatelliteData {..} = do+  forM_ _msm57SatelliteData_ranges $ B.putWord8 8+  forM_ _msm57SatelliteData_extendeds $ B.putWord8 4+  forM_ _msm57SatelliteData_rangesModulo $ B.putWord16be 10+  forM_ _msm57SatelliteData_phaseRangeRates $ B.putWord16be 14++-- | Msm4SignalData.+--+-- MSM4 signal data.+data Msm4SignalData = Msm4SignalData+  { _msm4SignalData_pseudoranges :: [Int16]+    -- ^ GNSS signal fine pseudoranges.+  , _msm4SignalData_phaseranges  :: [Int32]+    -- ^ GNSS signal fine phaserange data.+  , _msm4SignalData_lockTimes    :: [Word8]+    -- ^ GNSS phaserange lock time indicators.+  , _msm4SignalData_halfCycles   :: [Bool]+    -- ^ Half-cycle ambiguity indicators.+  , _msm4SignalData_cnrs         :: [Word8]+    -- ^ GNSS signal CNRs.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msm4SignalData)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msm4SignalData_" . stripPrefix "_msm4SignalData_"} ''Msm4SignalData)++-- | Get Bits for Msm4SignalData.+--+getBitsMsm4SignalData :: Int -> B.BitGet Msm4SignalData+getBitsMsm4SignalData n = do+  _msm4SignalData_pseudoranges <- replicateM n $ getInt16be 15+  _msm4SignalData_phaseranges  <- replicateM n $ getInt32be 22+  _msm4SignalData_lockTimes    <- replicateM n $ B.getWord8 4+  _msm4SignalData_halfCycles   <- replicateM n B.getBool+  _msm4SignalData_cnrs         <- replicateM n $ B.getWord8 6+  pure Msm4SignalData {..}++-- | Put Bits for Msm4SignalData.+--+putBitsMsm4SignalData :: Msm4SignalData -> B.BitPut ()+putBitsMsm4SignalData Msm4SignalData {..} = do+  forM_ _msm4SignalData_pseudoranges $ putInt16be 15+  forM_ _msm4SignalData_phaseranges $ putInt32be 22+  forM_ _msm4SignalData_lockTimes $ B.putWord8 4+  forM_ _msm4SignalData_halfCycles B.putBool+  forM_ _msm4SignalData_cnrs $ B.putWord8 6++-- | Msm5SignalData.+--+-- MSM5 signal data.+data Msm5SignalData = Msm5SignalData+  { _msm5SignalData_pseudoranges    :: [Int16]+    -- ^ GNSS signal fine pseudoranges.+  , _msm5SignalData_phaseranges     :: [Int32]+    -- ^ GNSS signal fine phaserange data.+  , _msm5SignalData_lockTimes       :: [Word8]+    -- ^ GNSS phaserange lock time indicators.+  , _msm5SignalData_halfCycles      :: [Bool]+    -- ^ Half-cycle ambiguity indicators.+  , _msm5SignalData_cnrs            :: [Word8]+    -- ^ GNSS signal CNRs.+  , _msm5SignalData_phaseRangeRates :: [Int16]+    -- ^ GNSS signal fine phaserangerates.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msm5SignalData)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msm5SignalData_" . stripPrefix "_msm5SignalData_"} ''Msm5SignalData)++-- | Get Bits for Msm5SignalData.+--+getBitsMsm5SignalData :: Int -> B.BitGet Msm5SignalData+getBitsMsm5SignalData n = do+  _msm5SignalData_pseudoranges    <- replicateM n $ getInt16be 15+  _msm5SignalData_phaseranges     <- replicateM n $ getInt32be 22+  _msm5SignalData_lockTimes       <- replicateM n $ B.getWord8 4+  _msm5SignalData_halfCycles      <- replicateM n B.getBool+  _msm5SignalData_cnrs            <- replicateM n $ B.getWord8 6+  _msm5SignalData_phaseRangeRates <- replicateM n $ getInt16be 15+  pure Msm5SignalData {..}++-- | Put Bits for Msm5SignalData.+--+putBitsMsm5SignalData :: Msm5SignalData -> B.BitPut ()+putBitsMsm5SignalData Msm5SignalData {..} = do+  forM_ _msm5SignalData_pseudoranges $ putInt16be 15+  forM_ _msm5SignalData_phaseranges $ putInt32be 22+  forM_ _msm5SignalData_lockTimes $ B.putWord8 4+  forM_ _msm5SignalData_halfCycles B.putBool+  forM_ _msm5SignalData_cnrs $ B.putWord8 6+  forM_ _msm5SignalData_phaseRangeRates $ putInt16be 15++-- | Msm6SignalData.+--+-- MSM6 signal data.+data Msm6SignalData = Msm6SignalData+  { _msm6SignalData_pseudoranges :: [Int32]+    -- ^ GNSS signal fine pseudoranges.+  , _msm6SignalData_phaseranges  :: [Int32]+    -- ^ GNSS signal fine phaserange data.+  , _msm6SignalData_lockTimes    :: [Word16]+    -- ^ GNSS phaserange lock time indicators.+  , _msm6SignalData_halfCycles   :: [Bool]+    -- ^ Half-cycle ambiguity indicators.+  , _msm6SignalData_cnrs         :: [Word16]+    -- ^ GNSS signal CNRs.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msm6SignalData)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msm6SignalData_" . stripPrefix "_msm6SignalData_"} ''Msm6SignalData)++-- | Get Bits for Msm6SignalData.+--+getBitsMsm6SignalData :: Int -> B.BitGet Msm6SignalData+getBitsMsm6SignalData n = do+  _msm6SignalData_pseudoranges <- replicateM n $ getInt32be 20+  _msm6SignalData_phaseranges  <- replicateM n $ getInt32be 24+  _msm6SignalData_lockTimes    <- replicateM n $ B.getWord16be 10+  _msm6SignalData_halfCycles   <- replicateM n B.getBool+  _msm6SignalData_cnrs         <- replicateM n $ B.getWord16be 10+  pure Msm6SignalData {..}++-- | Put Bits for Msm6SignalData.+--+putBitsMsm6SignalData :: Msm6SignalData -> B.BitPut ()+putBitsMsm6SignalData Msm6SignalData {..} = do+  forM_ _msm6SignalData_pseudoranges $ putInt32be 20+  forM_ _msm6SignalData_phaseranges $ putInt32be 24+  forM_ _msm6SignalData_lockTimes $ B.putWord16be 10+  forM_ _msm6SignalData_halfCycles B.putBool+  forM_ _msm6SignalData_cnrs $ B.putWord16be 10++-- | Msm7SignalData.+--+-- MSM7 signal data.+data Msm7SignalData = Msm7SignalData+  { _msm7SignalData_pseudoranges    :: [Int32]+    -- ^ GNSS signal fine pseudoranges.+  , _msm7SignalData_phaseranges     :: [Int32]+    -- ^ GNSS signal fine phaserange data.+  , _msm7SignalData_lockTimes       :: [Word16]+    -- ^ GNSS phaserange lock time indicators.+  , _msm7SignalData_halfCycles      :: [Bool]+    -- ^ Half-cycle ambiguity indicators.+  , _msm7SignalData_cnrs            :: [Word16]+    -- ^ GNSS signal CNRs.+  , _msm7SignalData_phaseRangeRates :: [Int16]+    -- ^ GNSS signal fine phaserangerates.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msm7SignalData)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msm7SignalData_" . stripPrefix "_msm7SignalData_"} ''Msm7SignalData)++-- | Get Bits for Msm7SignalData.+--+getBitsMsm7SignalData :: Int -> B.BitGet Msm7SignalData+getBitsMsm7SignalData n = do+  _msm7SignalData_pseudoranges    <- replicateM n $ getInt32be 20+  _msm7SignalData_phaseranges     <- replicateM n $ getInt32be 24+  _msm7SignalData_lockTimes       <- replicateM n $ B.getWord16be 10+  _msm7SignalData_halfCycles      <- replicateM n B.getBool+  _msm7SignalData_cnrs            <- replicateM n $ B.getWord16be 10+  _msm7SignalData_phaseRangeRates <- replicateM n $ getInt16be 15+  pure Msm7SignalData {..}++-- | Put Bits for Msm7SignalData.+--+putBitsMsm7SignalData :: Msm7SignalData -> B.BitPut ()+putBitsMsm7SignalData Msm7SignalData {..} = do+  forM_ _msm7SignalData_pseudoranges $ putInt32be 20+  forM_ _msm7SignalData_phaseranges $ putInt32be 24+  forM_ _msm7SignalData_lockTimes $ B.putWord16be 10+  forM_ _msm7SignalData_halfCycles B.putBool+  forM_ _msm7SignalData_cnrs $ B.putWord16be 10+  forM_ _msm7SignalData_phaseRangeRates $ putInt16be 15++msg1074 :: Word16+msg1074 = 1074++-- | Message 1074+--+-- RTCMv3 message 1074.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1074 = Msg1074+  { _msg1074_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1074_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1074_signalData    :: Msm4SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1074)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1074_" . stripPrefix "_msg1074_"} ''Msg1074)++instance Binary Msg1074 where+  get = B.runBitGet $ do+    _msg1074_header        <- getBits 0+    _msg1074_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1074_header ^. msmHeader_satelliteMask+    _msg1074_signalData    <- getBitsMsm4SignalData $ popCount $ _msg1074_header ^. msmHeader_cellMask+    pure Msg1074 {..}++  put Msg1074 {..} = B.runBitPut $ do+    putBits 0                 _msg1074_header+    putBitsMsm46SatelliteData _msg1074_satelliteData+    putBitsMsm4SignalData     _msg1074_signalData++$(deriveRTCM3 ''Msg1074)++msg1075 :: Word16+msg1075 = 1075++-- | Message 1075+--+-- RTCMv3 message 1075.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1075 = Msg1075+  { _msg1075_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1075_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1075_signalData    :: Msm5SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1075)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1075_" . stripPrefix "_msg1075_"} ''Msg1075)++instance Binary Msg1075 where+  get = B.runBitGet $ do+    _msg1075_header        <- getBits 0+    _msg1075_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1075_header ^. msmHeader_satelliteMask+    _msg1075_signalData    <- getBitsMsm5SignalData $ popCount $ _msg1075_header ^. msmHeader_cellMask+    pure Msg1075 {..}++  put Msg1075 {..} = B.runBitPut $ do+    putBits 0                 _msg1075_header+    putBitsMsm57SatelliteData _msg1075_satelliteData+    putBitsMsm5SignalData     _msg1075_signalData++$(deriveRTCM3 ''Msg1075)++msg1076 :: Word16+msg1076 = 1076++-- | Message 1076+--+-- RTCMv3 message 1076.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1076 = Msg1076+  { _msg1076_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1076_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1076_signalData    :: Msm6SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1076)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1076_" . stripPrefix "_msg1076_"} ''Msg1076)++instance Binary Msg1076 where+  get = B.runBitGet $ do+    _msg1076_header        <- getBits 0+    _msg1076_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1076_header ^. msmHeader_satelliteMask+    _msg1076_signalData    <- getBitsMsm6SignalData $ popCount $ _msg1076_header ^. msmHeader_cellMask+    pure Msg1076 {..}++  put Msg1076 {..} = B.runBitPut $ do+    putBits 0                 _msg1076_header+    putBitsMsm46SatelliteData _msg1076_satelliteData+    putBitsMsm6SignalData     _msg1076_signalData++$(deriveRTCM3 ''Msg1076)++msg1077 :: Word16+msg1077 = 1077++-- | Message 1077+--+-- RTCMv3 message 1077.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1077 = Msg1077+  { _msg1077_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1077_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1077_signalData    :: Msm7SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1077)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1077_" . stripPrefix "_msg1077_"} ''Msg1077)++instance Binary Msg1077 where+  get = B.runBitGet $ do+    _msg1077_header        <- getBits 0+    _msg1077_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1077_header ^. msmHeader_satelliteMask+    _msg1077_signalData    <- getBitsMsm7SignalData $ popCount $ _msg1077_header ^. msmHeader_cellMask+    pure Msg1077 {..}++  put Msg1077 {..} = B.runBitPut $ do+    putBits 0                 _msg1077_header+    putBitsMsm57SatelliteData _msg1077_satelliteData+    putBitsMsm7SignalData     _msg1077_signalData++$(deriveRTCM3 ''Msg1077)++msg1084 :: Word16+msg1084 = 1084++-- | Message 1084+--+-- RTCMv3 message 1084.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1084 = Msg1084+  { _msg1084_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1084_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1084_signalData    :: Msm4SignalData+    -- ^ MSM satellite data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1084)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1084_" . stripPrefix "_msg1084_"} ''Msg1084)++instance Binary Msg1084 where+  get = B.runBitGet $ do+    _msg1084_header        <- getBits 0+    _msg1084_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1084_header ^. msmHeader_satelliteMask+    _msg1084_signalData    <- getBitsMsm4SignalData $ popCount $ _msg1084_header ^. msmHeader_cellMask+    pure Msg1084 {..}++  put Msg1084 {..} = B.runBitPut $ do+    putBits 0                 _msg1084_header+    putBitsMsm46SatelliteData _msg1084_satelliteData+    putBitsMsm4SignalData     _msg1084_signalData++$(deriveRTCM3 ''Msg1084)++msg1085 :: Word16+msg1085 = 1085++-- | Message 1085+--+-- RTCMv3 message 1085.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1085 = Msg1085+  { _msg1085_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1085_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1085_signalData    :: Msm5SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1085)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1085_" . stripPrefix "_msg1085_"} ''Msg1085)++instance Binary Msg1085 where+  get = B.runBitGet $ do+    _msg1085_header <- getBits 0+    _msg1085_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1085_header ^. msmHeader_satelliteMask+    _msg1085_signalData    <- getBitsMsm5SignalData $ popCount $ _msg1085_header ^. msmHeader_cellMask+    pure Msg1085 {..}++  put Msg1085 {..} = B.runBitPut $ do+    putBits 0                 _msg1085_header+    putBitsMsm57SatelliteData _msg1085_satelliteData+    putBitsMsm5SignalData     _msg1085_signalData++$(deriveRTCM3 ''Msg1085)++msg1086 :: Word16+msg1086 = 1086++-- | Message 1086+--+-- RTCMv3 message 1086.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1086 = Msg1086+  { _msg1086_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1086_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1086_signalData    :: Msm6SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1086)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1086_" . stripPrefix "_msg1086_"} ''Msg1086)++instance Binary Msg1086 where+  get = B.runBitGet $ do+    _msg1086_header        <- getBits 0+    _msg1086_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1086_header ^. msmHeader_satelliteMask+    _msg1086_signalData    <- getBitsMsm6SignalData $ popCount $ _msg1086_header ^. msmHeader_cellMask+    pure Msg1086 {..}++  put Msg1086 {..} = B.runBitPut $ do+    putBits 0                 _msg1086_header+    putBitsMsm46SatelliteData _msg1086_satelliteData+    putBitsMsm6SignalData     _msg1086_signalData++$(deriveRTCM3 ''Msg1086)++msg1087 :: Word16+msg1087 = 1087++-- | Message 1087+--+-- RTCMv3 message 1087.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1087 = Msg1087+  { _msg1087_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1087_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1087_signalData    :: Msm7SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1087)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1087_" . stripPrefix "_msg1087_"} ''Msg1087)++instance Binary Msg1087 where+  get = B.runBitGet $ do+    _msg1087_header        <- getBits 0+    _msg1087_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1087_header ^. msmHeader_satelliteMask+    _msg1087_signalData    <- getBitsMsm7SignalData $ popCount $ _msg1087_header ^. msmHeader_cellMask+    pure Msg1087 {..}++  put Msg1087 {..} = B.runBitPut $ do+    putBits 0                 _msg1087_header+    putBitsMsm57SatelliteData _msg1087_satelliteData+    putBitsMsm7SignalData     _msg1087_signalData++$(deriveRTCM3 ''Msg1087)++msg1094 :: Word16+msg1094 = 1094++-- | Message 1094+--+-- RTCMv3 message 1094.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1094 = Msg1094+  { _msg1094_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1094_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1094_signalData    :: Msm4SignalData+    -- ^ MSM satellite data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1094)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1094_" . stripPrefix "_msg1094_"} ''Msg1094)++instance Binary Msg1094 where+  get = B.runBitGet $ do+    _msg1094_header        <- getBits 0+    _msg1094_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1094_header ^. msmHeader_satelliteMask+    _msg1094_signalData    <- getBitsMsm4SignalData $ popCount $ _msg1094_header ^. msmHeader_cellMask+    pure Msg1094 {..}++  put Msg1094 {..} = B.runBitPut $ do+    putBits 0                 _msg1094_header+    putBitsMsm46SatelliteData _msg1094_satelliteData+    putBitsMsm4SignalData     _msg1094_signalData++$(deriveRTCM3 ''Msg1094)++msg1095 :: Word16+msg1095 = 1095++-- | Message 1095+--+-- RTCMv3 message 1095.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1095 = Msg1095+  { _msg1095_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1095_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1095_signalData    :: Msm5SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1095)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1095_" . stripPrefix "_msg1095_"} ''Msg1095)++instance Binary Msg1095 where+  get = B.runBitGet $ do+    _msg1095_header        <- getBits 0+    _msg1095_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1095_header ^. msmHeader_satelliteMask+    _msg1095_signalData    <- getBitsMsm5SignalData $ popCount $ _msg1095_header ^. msmHeader_cellMask+    pure Msg1095 {..}++  put Msg1095 {..} = B.runBitPut $ do+    putBits 0                 _msg1095_header+    putBitsMsm57SatelliteData _msg1095_satelliteData+    putBitsMsm5SignalData     _msg1095_signalData++$(deriveRTCM3 ''Msg1095)++msg1096 :: Word16+msg1096 = 1096++-- | Message 1096+--+-- RTCMv3 message 1096.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1096 = Msg1096+  { _msg1096_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1096_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1096_signalData    :: Msm6SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1096)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1096_" . stripPrefix "_msg1096_"} ''Msg1096)++instance Binary Msg1096 where+  get = B.runBitGet $ do+    _msg1096_header        <- getBits 0+    _msg1096_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1096_header ^. msmHeader_satelliteMask+    _msg1096_signalData    <- getBitsMsm6SignalData $ popCount $ _msg1096_header ^. msmHeader_cellMask+    pure Msg1096 {..}++  put Msg1096 {..} = B.runBitPut $ do+    putBits 0                 _msg1096_header+    putBitsMsm46SatelliteData _msg1096_satelliteData+    putBitsMsm6SignalData     _msg1096_signalData++$(deriveRTCM3 ''Msg1096)++msg1097 :: Word16+msg1097 = 1097++-- | Message 1097+--+-- RTCMv3 message 1097.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1097 = Msg1097+  { _msg1097_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1097_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1097_signalData    :: Msm7SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1097)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1097_" . stripPrefix "_msg1097_"} ''Msg1097)++instance Binary Msg1097 where+  get = B.runBitGet $ do+    _msg1097_header        <- getBits 0+    _msg1097_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1097_header ^. msmHeader_satelliteMask+    _msg1097_signalData    <- getBitsMsm7SignalData $ popCount $ _msg1097_header ^. msmHeader_cellMask+    pure Msg1097 {..}++  put Msg1097 {..} = B.runBitPut $ do+    putBits 0                 _msg1097_header+    putBitsMsm57SatelliteData _msg1097_satelliteData+    putBitsMsm7SignalData     _msg1097_signalData++$(deriveRTCM3 ''Msg1097)++msg1104 :: Word16+msg1104 = 1104++-- | Message 1104+--+-- RTCMv3 message 1104.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1104 = Msg1104+  { _msg1104_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1104_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1104_signalData    :: Msm4SignalData+    -- ^ MSM satellite data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1104)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1104_" . stripPrefix "_msg1104_"} ''Msg1104)++instance Binary Msg1104 where+  get = B.runBitGet $ do+    _msg1104_header        <- getBits 0+    _msg1104_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1104_header ^. msmHeader_satelliteMask+    _msg1104_signalData    <- getBitsMsm4SignalData $ popCount $ _msg1104_header ^. msmHeader_cellMask+    pure Msg1104 {..}++  put Msg1104 {..} = B.runBitPut $ do+    putBits 0                 _msg1104_header+    putBitsMsm46SatelliteData _msg1104_satelliteData+    putBitsMsm4SignalData     _msg1104_signalData++$(deriveRTCM3 ''Msg1104)++msg1105 :: Word16+msg1105 = 1105++-- | Message 1105+--+-- RTCMv3 message 1105.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1105 = Msg1105+  { _msg1105_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1105_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1105_signalData    :: Msm5SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1105)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1105_" . stripPrefix "_msg1105_"} ''Msg1105)++instance Binary Msg1105 where+  get = B.runBitGet $ do+    _msg1105_header        <- getBits 0+    _msg1105_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1105_header ^. msmHeader_satelliteMask+    _msg1105_signalData    <- getBitsMsm5SignalData $ popCount $ _msg1105_header ^. msmHeader_cellMask+    pure Msg1105 {..}++  put Msg1105 {..} = B.runBitPut $ do+    putBits 0                 _msg1105_header+    putBitsMsm57SatelliteData _msg1105_satelliteData+    putBitsMsm5SignalData     _msg1105_signalData++$(deriveRTCM3 ''Msg1105)++msg1106 :: Word16+msg1106 = 1106++-- | Message 1106+--+-- RTCMv3 message 1106.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1106 = Msg1106+  { _msg1106_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1106_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1106_signalData    :: Msm6SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1106)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1106_" . stripPrefix "_msg1106_"} ''Msg1106)++instance Binary Msg1106 where+  get = B.runBitGet $ do+    _msg1106_header        <- getBits 0+    _msg1106_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1106_header ^. msmHeader_satelliteMask+    _msg1106_signalData    <- getBitsMsm6SignalData $ popCount $ _msg1106_header ^. msmHeader_cellMask+    pure Msg1106 {..}++  put Msg1106 {..} = B.runBitPut $ do+    putBits 0                 _msg1106_header+    putBitsMsm46SatelliteData _msg1106_satelliteData+    putBitsMsm6SignalData     _msg1106_signalData++$(deriveRTCM3 ''Msg1106)++msg1107 :: Word16+msg1107 = 1107++-- | Message 1107+--+-- RTCMv3 message 1107.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1107 = Msg1107+  { _msg1107_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1107_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1107_signalData    :: Msm7SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1107)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1107_" . stripPrefix "_msg1107_"} ''Msg1107)++instance Binary Msg1107 where+  get = B.runBitGet $ do+    _msg1107_header        <- getBits 0+    _msg1107_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1107_header ^. msmHeader_satelliteMask+    _msg1107_signalData    <- getBitsMsm7SignalData $ popCount $ _msg1107_header ^. msmHeader_cellMask+    pure Msg1107 {..}++  put Msg1107 {..} = B.runBitPut $ do+    putBits 0                 _msg1107_header+    putBitsMsm57SatelliteData _msg1107_satelliteData+    putBitsMsm7SignalData     _msg1107_signalData++$(deriveRTCM3 ''Msg1107)++msg1114 :: Word16+msg1114 = 1114++-- | Message 1114+--+-- RTCMv3 message 1114.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1114 = Msg1114+  { _msg1114_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1114_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1114_signalData    :: Msm4SignalData+    -- ^ MSM satellite data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1114)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1114_" . stripPrefix "_msg1114_"} ''Msg1114)++instance Binary Msg1114 where+  get = B.runBitGet $ do+    _msg1114_header        <- getBits 0+    _msg1114_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1114_header ^. msmHeader_satelliteMask+    _msg1114_signalData    <- getBitsMsm4SignalData $ popCount $ _msg1114_header ^. msmHeader_cellMask+    pure Msg1114 {..}++  put Msg1114 {..} = B.runBitPut $ do+    putBits 0                 _msg1114_header+    putBitsMsm46SatelliteData _msg1114_satelliteData+    putBitsMsm4SignalData     _msg1114_signalData++$(deriveRTCM3 ''Msg1114)++msg1115 :: Word16+msg1115 = 1115++-- | Message 1115+--+-- RTCMv3 message 1115.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1115 = Msg1115+  { _msg1115_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1115_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1115_signalData    :: Msm5SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1115)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1115_" . stripPrefix "_msg1115_"} ''Msg1115)++instance Binary Msg1115 where+  get = B.runBitGet $ do+    _msg1115_header        <- getBits 0+    _msg1115_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1115_header ^. msmHeader_satelliteMask+    _msg1115_signalData    <- getBitsMsm5SignalData $ popCount $ _msg1115_header ^. msmHeader_cellMask+    pure Msg1115 {..}++  put Msg1115 {..} = B.runBitPut $ do+    putBits 0                 _msg1115_header+    putBitsMsm57SatelliteData _msg1115_satelliteData+    putBitsMsm5SignalData     _msg1115_signalData++$(deriveRTCM3 ''Msg1115)++msg1116 :: Word16+msg1116 = 1116++-- | Message 1116+--+-- RTCMv3 message 1116.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1116 = Msg1116+  { _msg1116_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1116_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1116_signalData    :: Msm6SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1116)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1116_" . stripPrefix "_msg1116_"} ''Msg1116)++instance Binary Msg1116 where+  get = B.runBitGet $ do+    _msg1116_header        <- getBits 0+    _msg1116_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1116_header ^. msmHeader_satelliteMask+    _msg1116_signalData    <- getBitsMsm6SignalData $ popCount $ _msg1116_header ^. msmHeader_cellMask+    pure Msg1116 {..}++  put Msg1116 {..} = B.runBitPut $ do+    putBits 0                 _msg1116_header+    putBitsMsm46SatelliteData _msg1116_satelliteData+    putBitsMsm6SignalData     _msg1116_signalData++$(deriveRTCM3 ''Msg1116)++msg1117 :: Word16+msg1117 = 1117++-- | Message 1117+--+-- RTCMv3 message 1117.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1117 = Msg1117+  { _msg1117_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1117_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1117_signalData    :: Msm7SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1117)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1117_" . stripPrefix "_msg1117_"} ''Msg1117)++instance Binary Msg1117 where+  get = B.runBitGet $ do+    _msg1117_header        <- getBits 0+    _msg1117_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1117_header ^. msmHeader_satelliteMask+    _msg1117_signalData    <- getBitsMsm7SignalData $ popCount $ _msg1117_header ^. msmHeader_cellMask+    pure Msg1117 {..}++  put Msg1117 {..} = B.runBitPut $ do+    putBits 0                 _msg1117_header+    putBitsMsm57SatelliteData _msg1117_satelliteData+    putBitsMsm7SignalData     _msg1117_signalData++$(deriveRTCM3 ''Msg1117)++msg1124 :: Word16+msg1124 = 1124++-- | Message 1124+--+-- RTCMv3 message 1124.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1124 = Msg1124+  { _msg1124_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1124_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1124_signalData    :: Msm4SignalData+    -- ^ MSM satellite data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1124)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1124_" . stripPrefix "_msg1124_"} ''Msg1124)++instance Binary Msg1124 where+  get = B.runBitGet $ do+    _msg1124_header        <- getBits 0+    _msg1124_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1124_header ^. msmHeader_satelliteMask+    _msg1124_signalData    <- getBitsMsm4SignalData $ popCount $ _msg1124_header ^. msmHeader_cellMask+    pure Msg1124 {..}++  put Msg1124 {..} = B.runBitPut $ do+    putBits 0                 _msg1124_header+    putBitsMsm46SatelliteData _msg1124_satelliteData+    putBitsMsm4SignalData     _msg1124_signalData++$(deriveRTCM3 ''Msg1124)++msg1125 :: Word16+msg1125 = 1125++-- | Message 1125+--+-- RTCMv3 message 1125.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1125 = Msg1125+  { _msg1125_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1125_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1125_signalData    :: Msm5SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1125)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1125_" . stripPrefix "_msg1125_"} ''Msg1125)++instance Binary Msg1125 where+  get = B.runBitGet $ do+    _msg1125_header        <- getBits 0+    _msg1125_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1125_header ^. msmHeader_satelliteMask+    _msg1125_signalData    <- getBitsMsm5SignalData $ popCount $ _msg1125_header ^. msmHeader_cellMask+    pure Msg1125 {..}++  put Msg1125 {..} = B.runBitPut $ do+    putBits 0                 _msg1125_header+    putBitsMsm57SatelliteData _msg1125_satelliteData+    putBitsMsm5SignalData     _msg1125_signalData++$(deriveRTCM3 ''Msg1125)++msg1126 :: Word16+msg1126 = 1126++-- | Message 1126+--+-- RTCMv3 message 1126.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1126 = Msg1126+  { _msg1126_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1126_satelliteData :: Msm46SatelliteData+    -- ^ MSM satellite data.+  , _msg1126_signalData    :: Msm6SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1126)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1126_" . stripPrefix "_msg1126_"} ''Msg1126)++instance Binary Msg1126 where+  get = B.runBitGet $ do+    _msg1126_header        <- getBits 0+    _msg1126_satelliteData <- getBitsMsm46SatelliteData $ popCount $ _msg1126_header ^. msmHeader_satelliteMask+    _msg1126_signalData    <- getBitsMsm6SignalData $ popCount $ _msg1126_header ^. msmHeader_cellMask+    pure Msg1126 {..}++  put Msg1126 {..} = B.runBitPut $ do+    putBits 0                 _msg1126_header+    putBitsMsm46SatelliteData _msg1126_satelliteData+    putBitsMsm6SignalData     _msg1126_signalData++$(deriveRTCM3 ''Msg1126)++msg1127 :: Word16+msg1127 = 1127++-- | Message 1127+--+-- RTCMv3 message 1127.+--+-- See RTCM spec and MSM signal specification for more information+-- about these fields.+data Msg1127 = Msg1127+  { _msg1127_header        :: MsmHeader+    -- ^ MSM header.+  , _msg1127_satelliteData :: Msm57SatelliteData+    -- ^ MSM satellite data.+  , _msg1127_signalData    :: Msm7SignalData+    -- ^ MSM signal data.+  } deriving ( Show, Read, Eq )++$(makeLenses ''Msg1127)+$(deriveJSON defaultOptions {fieldLabelModifier = fromMaybe "_msg1127_" . stripPrefix "_msg1127_"} ''Msg1127)++instance Binary Msg1127 where+  get = B.runBitGet $ do+    _msg1127_header        <- getBits 0+    _msg1127_satelliteData <- getBitsMsm57SatelliteData $ popCount $ _msg1127_header ^. msmHeader_satelliteMask+    _msg1127_signalData    <- getBitsMsm7SignalData $ popCount $ _msg1127_header ^. msmHeader_cellMask+    pure Msg1127 {..}++  put Msg1127 {..} = B.runBitPut $ do+    putBits 0                 _msg1127_header+    putBitsMsm57SatelliteData _msg1127_satelliteData+    putBitsMsm7SignalData     _msg1127_signalData++$(deriveRTCM3 ''Msg1127)+
test/Test.hs view
@@ -13,6 +13,7 @@ import qualified Test.Data.RTCM3.Antennas     as Antennas import qualified Test.Data.RTCM3.Ephemerides  as Ephemerides import qualified Test.Data.RTCM3.Extras       as Extras+import qualified Test.Data.RTCM3.MSM          as MSM import qualified Test.Data.RTCM3.Observations as Observations import qualified Test.Data.RTCM3.SSR          as SSR import qualified Test.Data.RTCM3.System       as System@@ -25,6 +26,7 @@     , Antennas.tests     , Ephemerides.tests     , Extras.tests+    , MSM.tests     , Observations.tests     , SSR.tests     , System.tests
+ test/Test/Data/RTCM3/MSM.hs view
@@ -0,0 +1,411 @@+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE RecordWildCards   #-}+{-# OPTIONS -fno-warn-orphans  #-}++-- |+-- Module:      Test.Data.RTCM3.MSM+-- Copyright:   (c) 2015 Swift Navigation+-- License:     BSD3+-- Maintainer:  Swift Navigation <dev@swiftnav.com>+--+-- Test MSM module for RTCM3.++module Test.Data.RTCM3.MSM+  ( tests+  ) where++import BasicPrelude+import Control.Lens+import Data.Binary+import Data.Bits+import Data.RTCM3+import Test.Data.RTCM3.Test+import Test.Tasty+import Test.Tasty.QuickCheck++instance Arbitrary MsmHeader where+  arbitrary = do+    _msmHeader_num               <- arbitraryWord 12+    _msmHeader_station           <- arbitraryWord 12+    _msmHeader_epoch             <- arbitraryWord 30+    _msmHeader_multiple          <- arbitrary+    _msmHeader_iods              <- arbitraryWord 3+    _msmHeader_reserved          <- arbitraryWord 7+    _msmHeader_clockSteering     <- arbitraryWord 2+    _msmHeader_externalClock     <- arbitraryWord 2+    _msmHeader_smoothing         <- arbitrary+    _msmHeader_smoothingInterval <- arbitraryWord 3+    _msmHeader_satelliteMask     <- arbitraryWord 64+    _msmHeader_signalMask        <- arbitraryWord 32+    let x = min 64 $ popCount _msmHeader_satelliteMask * popCount _msmHeader_signalMask+    _msmHeader_cellMask          <- arbitraryWord x+    pure MsmHeader {..}++arbitraryMsm46SatelliteData :: Int -> Gen Msm46SatelliteData+arbitraryMsm46SatelliteData n = do+  _msm46SatelliteData_ranges       <- replicateM n $ arbitraryWord 8+  _msm46SatelliteData_rangesModulo <- replicateM n $ arbitraryWord 10+  pure Msm46SatelliteData {..}++arbitraryMsm57SatelliteData :: Int -> Gen Msm57SatelliteData+arbitraryMsm57SatelliteData n = do+  _msm57SatelliteData_ranges          <- replicateM n $ arbitraryWord 8+  _msm57SatelliteData_extendeds       <- replicateM n $ arbitraryWord 4+  _msm57SatelliteData_rangesModulo    <- replicateM n $ arbitraryWord 10+  _msm57SatelliteData_phaseRangeRates <- replicateM n $ arbitraryWord 14+  pure Msm57SatelliteData {..}++arbitraryMsm4SignalData :: Int -> Gen Msm4SignalData+arbitraryMsm4SignalData n = do+  _msm4SignalData_pseudoranges <- replicateM n $ arbitraryInt 15+  _msm4SignalData_phaseranges  <- replicateM n $ arbitraryInt 22+  _msm4SignalData_lockTimes    <- replicateM n $ arbitraryWord 4+  _msm4SignalData_halfCycles   <- replicateM n arbitrary+  _msm4SignalData_cnrs         <- replicateM n $ arbitraryWord 6+  pure Msm4SignalData {..}++arbitraryMsm5SignalData :: Int -> Gen Msm5SignalData+arbitraryMsm5SignalData n = do+  _msm5SignalData_pseudoranges    <- replicateM n $ arbitraryInt 15+  _msm5SignalData_phaseranges     <- replicateM n $ arbitraryInt 22+  _msm5SignalData_lockTimes       <- replicateM n $ arbitraryWord 4+  _msm5SignalData_halfCycles      <- replicateM n arbitrary+  _msm5SignalData_cnrs            <- replicateM n $ arbitraryWord 6+  _msm5SignalData_phaseRangeRates <- replicateM n $ arbitraryInt 15+  pure Msm5SignalData {..}++arbitraryMsm6SignalData :: Int -> Gen Msm6SignalData+arbitraryMsm6SignalData n = do+  _msm6SignalData_pseudoranges <- replicateM n $ arbitraryInt 20+  _msm6SignalData_phaseranges  <- replicateM n $ arbitraryInt 24+  _msm6SignalData_lockTimes    <- replicateM n $ arbitraryWord 10+  _msm6SignalData_halfCycles   <- replicateM n arbitrary+  _msm6SignalData_cnrs         <- replicateM n $ arbitraryWord 10+  pure Msm6SignalData {..}++arbitraryMsm7SignalData :: Int -> Gen Msm7SignalData+arbitraryMsm7SignalData n = do+  _msm7SignalData_pseudoranges    <- replicateM n $ arbitraryInt 20+  _msm7SignalData_phaseranges     <- replicateM n $ arbitraryInt 24+  _msm7SignalData_lockTimes       <- replicateM n $ arbitraryWord 10+  _msm7SignalData_halfCycles      <- replicateM n arbitrary+  _msm7SignalData_cnrs            <- replicateM n $ arbitraryWord 10+  _msm7SignalData_phaseRangeRates <- replicateM n $ arbitraryInt 15+  pure Msm7SignalData {..}++instance Arbitrary Msg1074 where+  arbitrary = do+    _msg1074_header        <- arbitrary+    _msg1074_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1074_header ^. msmHeader_satelliteMask+    _msg1074_signalData    <- arbitraryMsm4SignalData $ popCount $ _msg1074_header ^. msmHeader_cellMask+    pure Msg1074 {..}++instance Arbitrary Msg1075 where+  arbitrary = do+    _msg1075_header        <- arbitrary+    _msg1075_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1075_header ^. msmHeader_satelliteMask+    _msg1075_signalData    <- arbitraryMsm5SignalData $ popCount $ _msg1075_header ^. msmHeader_cellMask+    pure Msg1075 {..}++instance Arbitrary Msg1076 where+  arbitrary = do+    _msg1076_header        <- arbitrary+    _msg1076_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1076_header ^. msmHeader_satelliteMask+    _msg1076_signalData    <- arbitraryMsm6SignalData $ popCount $ _msg1076_header ^. msmHeader_cellMask+    pure Msg1076 {..}++instance Arbitrary Msg1077 where+  arbitrary = do+    _msg1077_header        <- arbitrary+    _msg1077_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1077_header ^. msmHeader_satelliteMask+    _msg1077_signalData    <- arbitraryMsm7SignalData $ popCount $ _msg1077_header ^. msmHeader_cellMask+    pure Msg1077 {..}++instance Arbitrary Msg1084 where+  arbitrary = do+    _msg1084_header        <- arbitrary+    _msg1084_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1084_header ^. msmHeader_satelliteMask+    _msg1084_signalData    <- arbitraryMsm4SignalData $ popCount $ _msg1084_header ^. msmHeader_cellMask+    pure Msg1084 {..}++instance Arbitrary Msg1085 where+  arbitrary = do+    _msg1085_header        <- arbitrary+    _msg1085_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1085_header ^. msmHeader_satelliteMask+    _msg1085_signalData    <- arbitraryMsm5SignalData $ popCount $ _msg1085_header ^. msmHeader_cellMask+    pure Msg1085 {..}++instance Arbitrary Msg1086 where+  arbitrary = do+    _msg1086_header        <- arbitrary+    _msg1086_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1086_header ^. msmHeader_satelliteMask+    _msg1086_signalData    <- arbitraryMsm6SignalData $ popCount $ _msg1086_header ^. msmHeader_cellMask+    pure Msg1086 {..}++instance Arbitrary Msg1087 where+  arbitrary = do+    _msg1087_header        <- arbitrary+    _msg1087_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1087_header ^. msmHeader_satelliteMask+    _msg1087_signalData    <- arbitraryMsm7SignalData $ popCount $ _msg1087_header ^. msmHeader_cellMask+    pure Msg1087 {..}++instance Arbitrary Msg1094 where+  arbitrary = do+    _msg1094_header        <- arbitrary+    _msg1094_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1094_header ^. msmHeader_satelliteMask+    _msg1094_signalData    <- arbitraryMsm4SignalData $ popCount $ _msg1094_header ^. msmHeader_cellMask+    pure Msg1094 {..}++instance Arbitrary Msg1095 where+  arbitrary = do+    _msg1095_header        <- arbitrary+    _msg1095_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1095_header ^. msmHeader_satelliteMask+    _msg1095_signalData    <- arbitraryMsm5SignalData $ popCount $ _msg1095_header ^. msmHeader_cellMask+    pure Msg1095 {..}++instance Arbitrary Msg1096 where+  arbitrary = do+    _msg1096_header        <- arbitrary+    _msg1096_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1096_header ^. msmHeader_satelliteMask+    _msg1096_signalData    <- arbitraryMsm6SignalData $ popCount $ _msg1096_header ^. msmHeader_cellMask+    pure Msg1096 {..}++instance Arbitrary Msg1097 where+  arbitrary = do+    _msg1097_header        <- arbitrary+    _msg1097_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1097_header ^. msmHeader_satelliteMask+    _msg1097_signalData    <- arbitraryMsm7SignalData $ popCount $ _msg1097_header ^. msmHeader_cellMask+    pure Msg1097 {..}++instance Arbitrary Msg1104 where+  arbitrary = do+    _msg1104_header        <- arbitrary+    _msg1104_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1104_header ^. msmHeader_satelliteMask+    _msg1104_signalData    <- arbitraryMsm4SignalData $ popCount $ _msg1104_header ^. msmHeader_cellMask+    pure Msg1104 {..}++instance Arbitrary Msg1105 where+  arbitrary = do+    _msg1105_header        <- arbitrary+    _msg1105_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1105_header ^. msmHeader_satelliteMask+    _msg1105_signalData    <- arbitraryMsm5SignalData $ popCount $ _msg1105_header ^. msmHeader_cellMask+    pure Msg1105 {..}++instance Arbitrary Msg1106 where+  arbitrary = do+    _msg1106_header        <- arbitrary+    _msg1106_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1106_header ^. msmHeader_satelliteMask+    _msg1106_signalData    <- arbitraryMsm6SignalData $ popCount $ _msg1106_header ^. msmHeader_cellMask+    pure Msg1106 {..}++instance Arbitrary Msg1107 where+  arbitrary = do+    _msg1107_header        <- arbitrary+    _msg1107_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1107_header ^. msmHeader_satelliteMask+    _msg1107_signalData    <- arbitraryMsm7SignalData $ popCount $ _msg1107_header ^. msmHeader_cellMask+    pure Msg1107 {..}++instance Arbitrary Msg1114 where+  arbitrary = do+    _msg1114_header        <- arbitrary+    _msg1114_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1114_header ^. msmHeader_satelliteMask+    _msg1114_signalData    <- arbitraryMsm4SignalData $ popCount $ _msg1114_header ^. msmHeader_cellMask+    pure Msg1114 {..}++instance Arbitrary Msg1115 where+  arbitrary = do+    _msg1115_header        <- arbitrary+    _msg1115_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1115_header ^. msmHeader_satelliteMask+    _msg1115_signalData    <- arbitraryMsm5SignalData $ popCount $ _msg1115_header ^. msmHeader_cellMask+    pure Msg1115 {..}++instance Arbitrary Msg1116 where+  arbitrary = do+    _msg1116_header        <- arbitrary+    _msg1116_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1116_header ^. msmHeader_satelliteMask+    _msg1116_signalData    <- arbitraryMsm6SignalData $ popCount $ _msg1116_header ^. msmHeader_cellMask+    pure Msg1116 {..}++instance Arbitrary Msg1117 where+  arbitrary = do+    _msg1117_header        <- arbitrary+    _msg1117_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1117_header ^. msmHeader_satelliteMask+    _msg1117_signalData    <- arbitraryMsm7SignalData $ popCount $ _msg1117_header ^. msmHeader_cellMask+    pure Msg1117 {..}++instance Arbitrary Msg1124 where+  arbitrary = do+    _msg1124_header        <- arbitrary+    _msg1124_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1124_header ^. msmHeader_satelliteMask+    _msg1124_signalData    <- arbitraryMsm4SignalData $ popCount $ _msg1124_header ^. msmHeader_cellMask+    pure Msg1124 {..}++instance Arbitrary Msg1125 where+  arbitrary = do+    _msg1125_header       <- arbitrary+    _msg1125_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1125_header ^. msmHeader_satelliteMask+    _msg1125_signalData    <- arbitraryMsm5SignalData $ popCount $ _msg1125_header ^. msmHeader_cellMask+    pure Msg1125 {..}++instance Arbitrary Msg1126 where+  arbitrary = do+    _msg1126_header        <- arbitrary+    _msg1126_satelliteData <- arbitraryMsm46SatelliteData $ popCount $ _msg1126_header ^. msmHeader_satelliteMask+    _msg1126_signalData    <- arbitraryMsm6SignalData $ popCount $ _msg1126_header ^. msmHeader_cellMask+    pure Msg1126 {..}++instance Arbitrary Msg1127 where+  arbitrary = do+    _msg1127_header        <- arbitrary+    _msg1127_satelliteData <- arbitraryMsm57SatelliteData $ popCount $ _msg1127_header ^. msmHeader_satelliteMask+    _msg1127_signalData    <- arbitraryMsm7SignalData $ popCount $ _msg1127_header ^. msmHeader_cellMask+    pure Msg1127 {..}++testMsg1074 :: TestTree+testMsg1074 =+  testProperty "Roundtrip Msg1074" $ \m ->+    decode (encode m) == (m :: Msg1074)++testMsg1075 :: TestTree+testMsg1075 =+  testProperty "Roundtrip Msg1075" $ \m ->+    decode (encode m) == (m :: Msg1075)++testMsg1076 :: TestTree+testMsg1076 =+  testProperty "Roundtrip Msg1076" $ \m ->+    decode (encode m) == (m :: Msg1076)++testMsg1077 :: TestTree+testMsg1077 =+  testProperty "Roundtrip Msg1077" $ \m ->+    decode (encode m) == (m :: Msg1077)++testMsg1084 :: TestTree+testMsg1084 =+  testProperty "Roundtrip Msg1084" $ \m ->+    decode (encode m) == (m :: Msg1084)++testMsg1085 :: TestTree+testMsg1085 =+  testProperty "Roundtrip Msg1085" $ \m ->+    decode (encode m) == (m :: Msg1085)++testMsg1086 :: TestTree+testMsg1086 =+  testProperty "Roundtrip Msg1086" $ \m ->+    decode (encode m) == (m :: Msg1086)++testMsg1087 :: TestTree+testMsg1087 =+  testProperty "Roundtrip Msg1087" $ \m ->+    decode (encode m) == (m :: Msg1087)++testMsg1094 :: TestTree+testMsg1094 =+  testProperty "Roundtrip Msg1094" $ \m ->+    decode (encode m) == (m :: Msg1094)++testMsg1095 :: TestTree+testMsg1095 =+  testProperty "Roundtrip Msg1095" $ \m ->+    decode (encode m) == (m :: Msg1095)++testMsg1096 :: TestTree+testMsg1096 =+  testProperty "Roundtrip Msg1096" $ \m ->+    decode (encode m) == (m :: Msg1096)++testMsg1097 :: TestTree+testMsg1097 =+  testProperty "Roundtrip Msg1097" $ \m ->+    decode (encode m) == (m :: Msg1097)++testMsg1104 :: TestTree+testMsg1104 =+  testProperty "Roundtrip Msg1104" $ \m ->+    decode (encode m) == (m :: Msg1104)++testMsg1105 :: TestTree+testMsg1105 =+  testProperty "Roundtrip Msg1105" $ \m ->+    decode (encode m) == (m :: Msg1105)++testMsg1106 :: TestTree+testMsg1106 =+  testProperty "Roundtrip Msg1106" $ \m ->+    decode (encode m) == (m :: Msg1106)++testMsg1107 :: TestTree+testMsg1107 =+  testProperty "Roundtrip Msg1107" $ \m ->+    decode (encode m) == (m :: Msg1107)++testMsg1114 :: TestTree+testMsg1114 =+  testProperty "Roundtrip Msg1114" $ \m ->+    decode (encode m) == (m :: Msg1114)++testMsg1115 :: TestTree+testMsg1115 =+  testProperty "Roundtrip Msg1115" $ \m ->+    decode (encode m) == (m :: Msg1115)++testMsg1116 :: TestTree+testMsg1116 =+  testProperty "Roundtrip Msg1116" $ \m ->+    decode (encode m) == (m :: Msg1116)++testMsg1117 :: TestTree+testMsg1117 =+  testProperty "Roundtrip Msg1117" $ \m ->+    decode (encode m) == (m :: Msg1117)++testMsg1124 :: TestTree+testMsg1124 =+  testProperty "Roundtrip Msg1124" $ \m ->+    decode (encode m) == (m :: Msg1124)++testMsg1125 :: TestTree+testMsg1125 =+  testProperty "Roundtrip Msg1125" $ \m ->+    decode (encode m) == (m :: Msg1125)++testMsg1126 :: TestTree+testMsg1126 =+  testProperty "Roundtrip Msg1126" $ \m ->+    decode (encode m) == (m :: Msg1126)++testMsg1127 :: TestTree+testMsg1127 =+  testProperty "Roundtrip Msg1127" $ \m ->+    decode (encode m) == (m :: Msg1127)++tests :: TestTree+tests =+  testGroup "MSM tests"+    [ testMsg1074+    , testMsg1075+    , testMsg1076+    , testMsg1077+    , testMsg1084+    , testMsg1085+    , testMsg1086+    , testMsg1087+    , testMsg1094+    , testMsg1095+    , testMsg1096+    , testMsg1097+    , testMsg1104+    , testMsg1105+    , testMsg1106+    , testMsg1107+    , testMsg1114+    , testMsg1115+    , testMsg1116+    , testMsg1117+    , testMsg1124+    , testMsg1125+    , testMsg1126+    , testMsg1127+    ]