Exemplo n.º 1
0
static DDS_ReturnCode_t struct_get(qeocore_data_t **data,
                                   const DDS_DynamicData dyndata,
                                   qeocore_member_id_t id,
                                   DDS_MemberDescriptor *mdesc)
{
    DDS_ReturnCode_t ddsrc = DDS_RETCODE_OUT_OF_RESOURCES;

    *data = calloc(1, sizeof(qeocore_data_t));
    if (NULL != *data) {
        (*data)->flags.is_single = 1;
        ddsrc = DDS_DynamicData_get_complex_value(dyndata, &(*data)->d.dynamic.single_data, id);
        if (DDS_RETCODE_NO_DATA == ddsrc) {
            /* no nested structure there yet, create empty one */
            (*data)->d.dynamic.single_data = DDS_DynamicDataFactory_create_data(mdesc->type);
            qeo_log_dds_null("DDS_DynamicDataFactory_create_data", (*data)->d.dynamic.single_data);
            if (NULL != (*data)->d.dynamic.single_data) {
                ddsrc = DDS_RETCODE_OK;
            }
        }
        else {
            qeo_log_dds_rc("DDS_DynamicData_get_complex_value", ddsrc);
        }
    }
    if (DDS_RETCODE_OK == ddsrc) {
        /* take ownership of type for future use */
        (*data)->d.dynamic.single_type = mdesc->type;
        mdesc->type = NULL;
    }
    else {
        if (NULL != *data) {
            if (NULL != (*data)->d.dynamic.single_data) {
                DDS_DynamicDataFactory_delete_data((*data)->d.dynamic.single_data);
            }
            free(*data);
        }
    }
    return ddsrc;
}
Exemplo n.º 2
0
#include "MP3_VS1053_defs.h"

#include "devman.h"

#define MP3_VS1053_BUFFER_SIZE 128

#define MASK_GPIO_EN (1 << 1)

/* Port registers */
#define VII_GPIO_SYS_CNTRL_1   0x180   /* GPIO Control Register */
#define VII_GPIO_CNTRL_PORTA_1 0x181
#define VII_GPIO_CNTRL_PORTB_1 0x182
#define VII_GPIO_CNTRL_PORTC_1 0x183
#define VII_GPIO_CNTRL_PORTD_1 0x184
#define VII_GPIO_CNTRL_PORTE_1 0x185
#define VII_GPIO_DATA_TX_PA_1  0x186
#define VII_GPIO_DATA_TX_PB_1  0x187
#define VII_GPIO_DATA_TX_PC_1  0x188
#define VII_GPIO_DATA_TX_PD_1  0x189
#define VII_GPIO_DATA_TX_PE_1  0x18a
#define VII_GPIO_DATA_RX_PA_1  0x18b
#define VII_GPIO_DATA_RX_PB_1  0x18c
#define VII_GPIO_DATA_RX_PC_1  0x18d
#define VII_GPIO_DATA_RX_PD_1  0x18e
#define VII_GPIO_DATA_RX_PE_1  0x18f
#define VII_GPIO_INT_REG_EN_1  0x19a   /* GPIO Interrupt Register */

port vII_gpio_sys_cntrl_1 @ VII_GPIO_SYS_CNTRL_1;
port vII_gpio_cntrl_porta_1 @ VII_GPIO_CNTRL_PORTA_1;
port vII_gpio_cntrl_portb_1 @ VII_GPIO_CNTRL_PORTB_1;
port vII_gpio_cntrl_portc_1 @ VII_GPIO_CNTRL_PORTC_1;
port vII_gpio_cntrl_portd_1 @ VII_GPIO_CNTRL_PORTD_1;
port vII_gpio_cntrl_porte_1 @ VII_GPIO_CNTRL_PORTE_1;
port vII_gpio_data_tx_pa_1 @ VII_GPIO_DATA_TX_PA_1;
port vII_gpio_data_tx_pb_1 @ VII_GPIO_DATA_TX_PB_1;
port vII_gpio_data_tx_pc_1 @ VII_GPIO_DATA_TX_PC_1;
port vII_gpio_data_tx_pd_1 @ VII_GPIO_DATA_TX_PD_1;
port vII_gpio_data_tx_pe_1 @ VII_GPIO_DATA_TX_PE_1;