コード例 #1
0
void px4flow_integral_sample_get_be(const uint8_t *n_var0, uint32_t n_var1, struct px4flow_integral_sample *n_var2)
{
    ivory_serialize_unpack_uint16_be(n_var0, n_var1, &n_var2->frame_count_since_last_readout);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) ((uint32_t) 2U + n_var1), &n_var2->pixel_flow_x_integral);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 4U), &n_var2->pixel_flow_y_integral);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 6U), &n_var2->gyro_x_rate_integral);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 8U), &n_var2->gyro_y_rate_integral);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 10U), &n_var2->gyro_z_rate_integral);
    ivory_serialize_unpack_uint32_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 12U), &n_var2->integration_timespan);
    ivory_serialize_unpack_uint32_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 16U), &n_var2->sonar_timestamp);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 20U), &n_var2->ground_distance);
    ivory_serialize_unpack_int16_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 22U), &n_var2->gyro_temperature);
    ivory_serialize_unpack_uint8_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 24U), &n_var2->quality);
    ibool_get_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 25U), &n_var2->samplefail);
    time_micros_t_get_be(n_var0, (uint32_t) (n_var1 + (uint32_t) 26U), &n_var2->time);
}
コード例 #2
0
void callback_decoder_serial_in(const uint8_t *n_var0)
{
    uint8_t n_deref0 = *n_var0;
    const uint8_t *n_cse0 = &hx_decoder.fstate;
    uint8_t n_deref1 = *n_cse0;
    int32_t n_deref2 = hx_decoder.offset;
    bool n_deref3 = hx_decoder.tagSeen;
    uint8_t n_r4 = decodeSM(&hx_decoder, n_deref0);
    uint8_t n_deref5 = *n_cse0;
    uint8_t n_deref6 = hx_decoder.ftag;
    bool n_cse4 = (bool) ((uint8_t) 2U == n_deref1);
    
    if ((bool) (n_cse4 && (bool) ((bool) (n_deref5 == (uint8_t) 1U) && n_deref3))) {
        if ((bool) (0 == n_deref6)) {
            bool n_deref7 = overrun;
            
            if ((bool) !n_deref7) {
                uint8_t n_local8[96U] = {};
                uint8_t *n_ref9 = n_local8;
                
                for (int32_t n_ix10 = (int32_t) 0; n_ix10 <= (int32_t) 95; n_ix10++) {
                    ivory_serialize_unpack_uint8_be((const uint8_t *) buf, (uint32_t) n_ix10, &n_ref9[n_ix10]);
                }
                callback_push(n_ref9);
            }
        }
    } else {
        if ((bool) (n_deref1 == (uint8_t) 1U)) {
            if ((bool) (0 == n_deref6)) {
                overrun = false;
                for (int32_t n_ix11 = (int32_t) 0; n_ix11 <= (int32_t) 194; n_ix11++) {
                    buf[n_ix11] = (uint8_t) 0U;
                }
            }
        } else {
            if ((bool) (n_cse4 || (bool) (n_deref1 == (uint8_t) 3U))) {
                if ((bool) (0 == n_deref6)) {
                    if ((bool) (n_deref2 < (int32_t) 195)) {
                        buf[n_deref2 % 195] = n_r4;
                    } else {
                        overrun = true;
                    }
                }
            }
        }
    }
}