main_ubi_sdk v 0.1.3
This is UBI4 documentation
base_parameter.h File Reference
#include "stdint.h"
#include "stdbool.h"
#include "utils/static_conteiner.h"
Include dependency graph for base_parameter.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

union  u_ble_uuid
 
struct  param_addinfo_custom_ble_char_struct
 
struct  base_parameter_addinfoseg_struct
 Верхнеуровневая структура addinfo (в основном виджета, но не только) More...
 
struct  base_parameter_info_struct
 Дочерняя структура base_parameter_struct, содержит информацию о параметре More...
 
struct  param_addinfo_read_data_table_struct
 
struct  StructArrayAddInfo_struct
 
struct  StructArray_write_item_header_struct
 
struct  dependence_info_struct
 
struct  enable_function_struct
 
struct  base_parameter_pointers_struct
 Дочерняя структура base_parameter_struct, содержит указатели и колбеки More...
 
struct  base_parameter_struct
 Верхнеуровневая струткура декларации параметра More...
 
struct  parameter_consumer_array_struct
 
struct  dependence_info_array_struct
 
struct  parameter_manager_struct
 
struct  parameter_stream_filter_struct
 
struct  external_device_parameter_stream__struct
 

Typedefs

typedef void(* change_notification_callback_t) (void *param, uint8_t *newVal)
 
typedef void(* tx_notificaion_callback_t) (void *param)
 
typedef void(* pre_read_callback_t) (void *param)
 
typedef void(* pre_read_data_transfer_callback_t) (void *param, uint8_t *args, uint16_t size)
 

Enumerations

enum  parameter_addinfo_type_enum {
  PAITE_UNKNOW = 0 , PAITE_BLE_CUSTOM_CHAR = 1 , PAITE_BLE_AUTO_CHAR = 2 , PAITE_BLE_CUSTOM_CHAR_STRUCT_ARRAY_ITEM = 3 ,
  PAITE_BLE_AUTO_CHAR_STRUCT_ARRAY_ITEM = 4 , PAITE_WIDGET = 5 , PAITE_VALUE_LIMIT_MIN_MAX = 6 , PAITE_READ_DATA_TABLE_SLOT = 7 ,
  PAITE_ADD_PARAM_TO_WIDGET = 8
}
 
enum  ble_uuid_len_enum { BULE_LEN_16 = 0 , BULE_LEN_32 , BULE_LEN_128 }
 
enum  parameter_type_enum {
  PARTE_UNKNOW , PARTE_BOOL_TYPE , PARTE_BOOL_ARRAY_TYPE , PARTE_BOOL_MAP_TYPE ,
  PARTE_INT32_TYPE , PARTE_INT32_ARRAY_TYPE , PARTE_INT32_MAP_TYPE , PARTE_INT16_TYPE ,
  PARTE_INT16_ARRAY_TYPE , PARTE_INT16_MAP_TYPE , PARTE_INT8_TYPE , PARTE_INT8_ARRAY_TYPE ,
  PARTE_INT8_MAP_TYPE , PARTE_UINT32_TYPE , PARTE_UINT32_ARRAY_TYPE , PARTE_UINT32_MAP_TYPE ,
  PARTE_UINT16_TYPE , PARTE_UINT16_ARRAY_TYPE , PARTE_UINT16_MAP_TYPE , PARTE_UINT8_TYPE ,
  PARTE_UINT8_ARRAY_TYPE , PARTE_UINT8_MAP_TYPE , PARTE_FLOAT_TYPE , PARTE_FLOAT_ARRAY_TYPE ,
  PARTE_FLOAT_MAP_TYPE , PARTE_STRUCT_TYPE , PARTE_STRUCT_ARRAY_TYPE , PARTE_STRUCT_MAP_TYPE ,
  PARTE_FIX_LEN_CHAR_TYPE , PARTE_VAR_LEN_CHAR_TYPE , PARTE_FIX_DATA_TRANSFER_TYPE , PARTE_NUM
}
 Тип передаваемого параметра. Содержится в base_parameter_info_struct.type. More...
 
enum  parameter_dependence_type_enum { PDTE_UNKNOW = 0 , PDTE_EXTERNAL_DEVICE_PARAMETER_STREAM }
 
enum  parameter_save_setting_enum { PSSE_DONT_SAVE = 0 , PSSE_SAVE }
 
enum  parameter_synchronization_direction_enum { PSDE_MASTER_TO_SLAVE = 0 , PSDE_SLAVE_TO_MASTER , PSDE_BIDIRECTIONAL , PSDE_BIDIRECTIONAL_TWO_PARAMETERS }
 
enum  parameter_synchronization_type_enum {
  PSTE_READ_ONLY = 0 , PSTE_WRITE_ONLY , PSTE_STREAMING , PSTE_NOTIFICATION ,
  PSTE_READ_WRITE
}
 
enum  parameter_link_type_enum { PLTE_AUTO = 0 , PLTE_DYNAMIC , PLTE_NO_LINK }
 
enum  parameter_limite_type_enum {
  PLTE_LIMIT_NO_LIMIT = 0 , PLTE_LIMIT_BY_TYPE = 1 , PLTE_LIMIT_CUSTOM = 2 , PLTE_LIMIT_100 = 3 ,
  PLTE_LIMIT_NUM
}
 
enum  parameter_request_optimisation_enum { PROE_REGULAR_STREAM = 0 , PROE_ACTIVATED_STREAM = 1 }
 Режим стрима параметра More...
 
enum  parameter_enable_external_stream_enum { PEESE_DEFAULT_STREAM_MODE = 0 , PEESE_ACTIVATED_STREAM = 1 }
 
enum  StructArray_write_command_enum { SAWCE_ERROR = 0 , SAWCE_ITEM_WRITE }
 

Functions

void init_parameter_manager (parameter_manager_struct **param_manager, base_parameter_struct *parameters, uint8_t param_num)
 
void parameter_write_data (parameter_manager_struct *param_manager, uint8_t data_code, uint8_t instance, void *data)
 
void parameter_write_data_obj (parameter_manager_struct *param_manager, base_parameter_struct *param, uint8_t *data)
 
void parameter_write_data_info (parameter_manager_struct *param_manager, base_parameter_info_struct *param_info, void *data)
 
void parameter_write_master_to_slave_simple (base_parameter_struct *param, uint8_t *Data)
 
void parameter_write_master_to_slave_struct_array (base_parameter_struct *param, uint8_t *Data)
 
void parameter_write_master_to_slave_data_transfer (base_parameter_struct *param, uint8_t *Data, uint16_t size)
 
void create_parameter_consumer_array (base_parameter_pointers_struct *param_pointers, uint8_t size)
 
void parameter_add_consumer (base_parameter_pointers_struct *source_param_pointers, base_parameter_struct param)
 
bool parameter_add_dependence (base_parameter_pointers_struct *param_pointers, uint8_t type, uint8_t instance, void *dependence_pointer, uint32_t dependence_size)
 

Typedef Documentation

◆ change_notification_callback_t

typedef void(* change_notification_callback_t) (void *param, uint8_t *newVal)

◆ pre_read_callback_t

typedef void(* pre_read_callback_t) (void *param)

◆ pre_read_data_transfer_callback_t

typedef void(* pre_read_data_transfer_callback_t) (void *param, uint8_t *args, uint16_t size)

◆ tx_notificaion_callback_t

typedef void(* tx_notificaion_callback_t) (void *param)

Enumeration Type Documentation

◆ ble_uuid_len_enum

Enumerator
BULE_LEN_16 
BULE_LEN_32 
BULE_LEN_128 

◆ parameter_addinfo_type_enum

Enumerator
PAITE_UNKNOW 
PAITE_BLE_CUSTOM_CHAR 
PAITE_BLE_AUTO_CHAR 
PAITE_BLE_CUSTOM_CHAR_STRUCT_ARRAY_ITEM 
PAITE_BLE_AUTO_CHAR_STRUCT_ARRAY_ITEM 
PAITE_WIDGET 
PAITE_VALUE_LIMIT_MIN_MAX 
PAITE_READ_DATA_TABLE_SLOT 
PAITE_ADD_PARAM_TO_WIDGET