@@ -894,6 +894,120 @@ struct UbloxSerializer<ublox_msgs::msg::CfgTMODE3_<ContainerAllocator> > {
894894 }
895895};
896896
897+ // /
898+ // / @brief Serializes the CfgVALDEL message which has a repeated block.
899+ // /
900+ template <typename ContainerAllocator>
901+ struct UbloxSerializer <ublox_msgs::msg::CfgVALDEL_<ContainerAllocator> > {
902+ inline static void read (const uint8_t *data, uint32_t count,
903+ ublox_msgs::msg::CfgVALDEL_<ContainerAllocator> &m) {
904+ UbloxIStream stream (const_cast <uint8_t *>(data), count);
905+ stream.next (m.version );
906+ stream.next (m.layers );
907+ stream.next (m.reserved0 [0 ]);
908+ stream.next (m.reserved0 [1 ]);
909+ for (std::size_t i = 0 ; i < m.keys .size (); ++i) {
910+ deserialize (stream, m.keys [i]);
911+ }
912+ }
913+
914+ inline static uint32_t serializedLength (const ublox_msgs::msg::CfgVALDEL_<ContainerAllocator> &m) {
915+ return 4 + 4 * m.keys .size ();
916+ }
917+
918+ inline static void write (const uint8_t *data, uint32_t count,
919+ const ublox_msgs::msg::CfgVALDEL_<ContainerAllocator> &m) {
920+ UbloxOStream stream (const_cast <uint8_t *>(data), count);
921+ stream.next (m.version );
922+ stream.next (m.layers );
923+ stream.next (m.reserved0 [0 ]);
924+ stream.next (m.reserved0 [1 ]);
925+ for (std::size_t i = 0 ; i < m.keys .size (); ++i) {
926+ serialize (stream, m.keys [i]);
927+ }
928+ }
929+ };
930+
931+ // /
932+ // / @brief Serializes the CfgVALGET message which has a repeated block.
933+ // /
934+ template <typename ContainerAllocator>
935+ struct UbloxSerializer <ublox_msgs::msg::CfgVALGET_<ContainerAllocator> > {
936+ inline static void read (const uint8_t *data, uint32_t count,
937+ ublox_msgs::msg::CfgVALGET_<ContainerAllocator> &m) {
938+ UbloxIStream stream (const_cast <uint8_t *>(data), count);
939+ stream.next (m.version );
940+ stream.next (m.layers );
941+ stream.next (m.position );
942+ uint8_t data_size = (count - 4 ) / 4 ;
943+ m.keys .resize (data_size);
944+ // the key and values are all together in the keys array
945+ for (std::size_t i = 0 ; i < data_size; ++i) {
946+ deserialize (stream, m.keys [i]);
947+ }
948+ }
949+
950+ inline static uint32_t serializedLength (const ublox_msgs::msg::CfgVALGET_<ContainerAllocator> &m) {
951+ return 4 + 4 * m.keys .size ();
952+ }
953+
954+ inline static void write (const uint8_t *data, uint32_t count,
955+ const ublox_msgs::msg::CfgVALGET_<ContainerAllocator> &m) {
956+ UbloxOStream stream (const_cast <uint8_t *>(data), count);
957+ stream.next (m.version );
958+ stream.next (m.layers );
959+ stream.next (m.position );
960+ for (std::size_t i = 0 ; i < m.keys .size (); ++i) {
961+ serialize (stream, m.keys [i]);
962+ }
963+ }
964+ };
965+
966+ // /
967+ // / @brief Serializes the CfgVALSET message which has a repeated block.
968+ // /
969+ template <typename ContainerAllocator>
970+ struct UbloxSerializer <ublox_msgs::msg::CfgVALSET_<ContainerAllocator> > {
971+ inline static void read (const uint8_t *data, uint32_t count,
972+ ublox_msgs::msg::CfgVALSET_<ContainerAllocator> &m) {
973+ UbloxIStream stream (const_cast <uint8_t *>(data), count);
974+ stream.next (m.version );
975+ stream.next (m.layers );
976+ stream.next (m.reserved0 [0 ]);
977+ stream.next (m.reserved0 [1 ]);
978+ for (std::size_t i = 0 ; i < m.cfgdata .size (); ++i) {
979+ deserialize (stream, m.cfgdata [i].key );
980+ for (std::size_t j = 0 ; j < m.cfgdata [i].data .size (); ++j) {
981+ deserialize (stream, m.cfgdata [i].data [j]);
982+ }
983+ }
984+ }
985+
986+ inline static uint32_t serializedLength (const ublox_msgs::msg::CfgVALSET_<ContainerAllocator> &m) {
987+ int data_size = 0 ;
988+ for (std::size_t i = 0 ; i < m.cfgdata .size (); ++i) {
989+ data_size += m.cfgdata [i].data .size ();
990+ data_size += 4 ;
991+ }
992+ return 4 + data_size;
993+ }
994+
995+ inline static void write (const uint8_t *data, uint32_t count,
996+ const ublox_msgs::msg::CfgVALSET_<ContainerAllocator> &m) {
997+ UbloxOStream stream (const_cast <uint8_t *>(data), count);
998+ stream.next (m.version );
999+ stream.next (m.layers );
1000+ stream.next (m.reserved0 [0 ]);
1001+ stream.next (m.reserved0 [1 ]);
1002+ for (std::size_t i = 0 ; i < m.cfgdata .size (); ++i) {
1003+ serialize (stream, m.cfgdata [i].key );
1004+ for (std::size_t j = 0 ; j < m.cfgdata [i].data .size (); ++j) {
1005+ serialize (stream, m.cfgdata [i].data [j]);
1006+ }
1007+ }
1008+ }
1009+ };
1010+
8971011template <typename ContainerAllocator>
8981012struct UbloxSerializer <ublox_msgs::msg::EsfINS_<ContainerAllocator> > {
8991013 inline static void read (const uint8_t *data, uint32_t count,
0 commit comments