ubloxcfg
u-blox 9 configuration helpers
ubloxcfg.h File Reference

u-blox 9 positioning receivers configuration library More...

#include <stdint.h>
#include <stdbool.h>
#include "ubloxcfg_gen.h"

Go to the source code of this file.

Data Structures

struct  UBLOXCFG_CONST_s
 Constants for type E1/E2/E4 configuration items. More...
 
struct  UBLOXCFG_ITEM_s
 Configuration item. More...
 
struct  UBLOXCFG_MSGRATE_s
 Configuration items for output message rate configuration. More...
 
union  UBLOXCFG_VALUE_u
 Configuration value storage (s.a. UBLOXCFG_TYPE_t) More...
 
struct  UBLOXCFG_KEYVAL_s
 Key-value pair. More...
 

Macros

#define UBLOXCFG_ID2SIZE(id)
 Get item size from item ID. More...
 
#define UBLOXCFG_ID2GROUP(id)
 Get item group ID from item ID. More...
 
#define UBLOXCFG_ID2IDGRP(id)
 Get item ID within group from item ID. More...
 
#define UBLOXCFG_KEYVAL_ANY(name, value)
 Initialiser for a UBLOXCFG_KEYVAL_t for any type. More...
 
#define UBLOXCFG_KEYVAL_ENU(name, value)
 Initialiser for a UBLOXCFG_KEYVAL_t for enum types. More...
 
#define UBLOXCFG_KEYVAL_MSG(msg, port, rate)
 Initialiser for UBLOXCFG_KEYVAL_t for output message rate. More...
 
#define UBLOXCFG_MAX_KEYVAL_STR_SIZE
 Maximum size (= length + 1) for key-value stringification.
 

Typedefs

typedef enum UBLOXCFG_SIZE_e UBLOXCFG_SIZE_t
 Configuration item size.
 
typedef enum UBLOXCFG_TYPE_e UBLOXCFG_TYPE_t
 Configuration item storage type (s.a. UBLOXCFG_VALUE_t)
 
typedef struct UBLOXCFG_CONST_s UBLOXCFG_CONST_t
 Constants for type E1/E2/E4 configuration items.
 
typedef struct UBLOXCFG_ITEM_s UBLOXCFG_ITEM_t
 Configuration item.
 
typedef struct UBLOXCFG_MSGRATE_s UBLOXCFG_MSGRATE_t
 Configuration items for output message rate configuration.
 
typedef enum UBLOXCFG_LAYER_e UBLOXCFG_LAYER_t
 Configuration layers.
 
typedef union UBLOXCFG_VALUE_u UBLOXCFG_VALUE_t
 Configuration value storage (s.a. UBLOXCFG_TYPE_t)
 
typedef struct UBLOXCFG_KEYVAL_s UBLOXCFG_KEYVAL_t
 Key-value pair.
 

Enumerations

enum  UBLOXCFG_SIZE_e {
  UBLOXCFG_SIZE_BIT = 0x01, UBLOXCFG_SIZE_ONE = 0x02, UBLOXCFG_SIZE_TWO = 0x03, UBLOXCFG_SIZE_FOUR = 0x04,
  UBLOXCFG_SIZE_EIGHT = 0x05
}
 Configuration item size. More...
 
enum  UBLOXCFG_TYPE_e {
  UBLOXCFG_TYPE_U1, UBLOXCFG_TYPE_U2, UBLOXCFG_TYPE_U4, UBLOXCFG_TYPE_U8,
  UBLOXCFG_TYPE_I1, UBLOXCFG_TYPE_I2, UBLOXCFG_TYPE_I4, UBLOXCFG_TYPE_I8,
  UBLOXCFG_TYPE_X1, UBLOXCFG_TYPE_X2, UBLOXCFG_TYPE_X4, UBLOXCFG_TYPE_X8,
  UBLOXCFG_TYPE_R4, UBLOXCFG_TYPE_R8, UBLOXCFG_TYPE_E1, UBLOXCFG_TYPE_E2,
  UBLOXCFG_TYPE_E4, UBLOXCFG_TYPE_L
}
 Configuration item storage type (s.a. UBLOXCFG_VALUE_t) More...
 
enum  UBLOXCFG_LAYER_e { UBLOXCFG_LAYER_RAM, UBLOXCFG_LAYER_BBR, UBLOXCFG_LAYER_FLASH, UBLOXCFG_LAYER_DEFAULT }
 Configuration layers. More...
 

Functions

const UBLOXCFG_ITEM_tubloxcfg_getItemByName (const char *name)
 Get configuration item info by name. More...
 
const UBLOXCFG_ITEM_tubloxcfg_getItemById (const uint32_t id)
 Get configuration item info by key ID. More...
 
const UBLOXCFG_ITEM_t ** ubloxcfg_getAllItems (int *num)
 Get list of all items. More...
 
const UBLOXCFG_MSGRATE_tubloxcfg_getMsgRateCfg (const char *msgName)
 Get configuration items for output message rate configuration. More...
 
const UBLOXCFG_MSGRATE_t ** ubloxcfg_getAllMsgRateCfgs (int *num)
 Get list of all output message rate configurations. More...
 
const char * ubloxcfg_layerName (const UBLOXCFG_LAYER_t layer)
 Get name for layer.
 
bool ubloxcfg_layerFromName (const char *name, UBLOXCFG_LAYER_t *layer)
 Get layer from name. More...
 
bool ubloxcfg_makeData (uint8_t *data, const int size, const UBLOXCFG_KEYVAL_t *keyVal, const int nKeyVal, int *dataSize)
 Configuration data from key-value list. More...
 
bool ubloxcfg_parseData (const uint8_t *data, const int size, UBLOXCFG_KEYVAL_t *keyVal, const int maxKeyVal, int *nKeyVal)
 Key-value list from configuration data. More...
 
const char * ubloxcfg_typeStr (UBLOXCFG_TYPE_t type)
 Stringify item type. More...
 
bool ubloxcfg_stringifyValue (char *str, const int size, const UBLOXCFG_TYPE_t type, const UBLOXCFG_ITEM_t *item, const UBLOXCFG_VALUE_t *val)
 Stringify item value. More...
 
bool ubloxcfg_splitValueStr (char *str, char **valueStr, char **prettyStr)
 Split stringified value string. More...
 
bool ubloxcfg_stringifyKeyVal (char *str, const int size, const UBLOXCFG_KEYVAL_t *keyVal)
 Stringify key-value pair (for debugging) More...
 
bool ubloxcfg_valueFromString (const char *str, const UBLOXCFG_TYPE_t type, const UBLOXCFG_ITEM_t *item, UBLOXCFG_VALUE_t *value)
 Convert string to value. More...
 
uint16_t ubloxcfg_getVersion (void)
 Get library version. More...
 
const char ** ubloxcfg_getSources (int *numSources)
 Get strings describing the data sources.
 

Detailed Description

u-blox 9 positioning receivers configuration library

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see https://www.gnu.org/licenses/.

Definition in file ubloxcfg.h.