mirror of https://github.com/ArduPilot/ardupilot
SITL: squash static_assert warnings
This commit is contained in:
parent
4d419bb918
commit
76c0b0a8e0
|
@ -98,7 +98,7 @@ void GPS_Trimble::publish(const GPS_Data *d)
|
||||||
pos_flags_2,
|
pos_flags_2,
|
||||||
bootcount
|
bootcount
|
||||||
};
|
};
|
||||||
static_assert(sizeof(gsof_pos_time) - (sizeof(gsof_pos_time::OUTPUT_RECORD_TYPE) + sizeof(gsof_pos_time::RECORD_LEN)) == GSOF_POS_TIME_LEN);
|
static_assert(sizeof(gsof_pos_time) - (sizeof(gsof_pos_time::OUTPUT_RECORD_TYPE) + sizeof(gsof_pos_time::RECORD_LEN)) == GSOF_POS_TIME_LEN, "Trimble size check failed");
|
||||||
|
|
||||||
payload_sz += sizeof(pos_time);
|
payload_sz += sizeof(pos_time);
|
||||||
memcpy(&buf[offset], &pos_time, sizeof(pos_time));
|
memcpy(&buf[offset], &pos_time, sizeof(pos_time));
|
||||||
|
@ -127,7 +127,7 @@ void GPS_Trimble::publish(const GPS_Data *d)
|
||||||
gsof_pack_double(d->longitude * DEG_TO_RAD_DOUBLE),
|
gsof_pack_double(d->longitude * DEG_TO_RAD_DOUBLE),
|
||||||
gsof_pack_double(static_cast<double>(d->altitude))
|
gsof_pack_double(static_cast<double>(d->altitude))
|
||||||
};
|
};
|
||||||
static_assert(sizeof(gsof_pos) - (sizeof(gsof_pos::OUTPUT_RECORD_TYPE) + sizeof(gsof_pos::RECORD_LEN)) == GSOF_POS_LEN);
|
static_assert(sizeof(gsof_pos) - (sizeof(gsof_pos::OUTPUT_RECORD_TYPE) + sizeof(gsof_pos::RECORD_LEN)) == GSOF_POS_LEN, "Trimble size check failed");
|
||||||
|
|
||||||
payload_sz += sizeof(pos);
|
payload_sz += sizeof(pos);
|
||||||
memcpy(&buf[offset], &pos, sizeof(pos));
|
memcpy(&buf[offset], &pos, sizeof(pos));
|
||||||
|
@ -180,7 +180,7 @@ void GPS_Trimble::publish(const GPS_Data *d)
|
||||||
// Intentionally narrow from double.
|
// Intentionally narrow from double.
|
||||||
gsof_pack_float(static_cast<float>(d->speedD))
|
gsof_pack_float(static_cast<float>(d->speedD))
|
||||||
};
|
};
|
||||||
static_assert(sizeof(gsof_vel) - (sizeof(gsof_vel::OUTPUT_RECORD_TYPE) + sizeof(gsof_vel::RECORD_LEN)) == GSOF_VEL_LEN);
|
static_assert(sizeof(gsof_vel) - (sizeof(gsof_vel::OUTPUT_RECORD_TYPE) + sizeof(gsof_vel::RECORD_LEN)) == GSOF_VEL_LEN, "Trimble size check failed");
|
||||||
|
|
||||||
payload_sz += sizeof(vel);
|
payload_sz += sizeof(vel);
|
||||||
memcpy(&buf[offset], &vel, sizeof(vel));
|
memcpy(&buf[offset], &vel, sizeof(vel));
|
||||||
|
@ -204,13 +204,13 @@ void GPS_Trimble::publish(const GPS_Data *d)
|
||||||
} dop {};
|
} dop {};
|
||||||
// Check the payload size calculation in the compiler
|
// Check the payload size calculation in the compiler
|
||||||
constexpr auto dop_size = sizeof(gsof_dop);
|
constexpr auto dop_size = sizeof(gsof_dop);
|
||||||
static_assert(dop_size == 18);
|
static_assert(dop_size == 18, "gsof_dop must be 8 bytes");
|
||||||
constexpr auto dop_record_type_size = sizeof(gsof_dop::OUTPUT_RECORD_TYPE);
|
constexpr auto dop_record_type_size = sizeof(gsof_dop::OUTPUT_RECORD_TYPE);
|
||||||
static_assert(dop_record_type_size == 1);
|
static_assert(dop_record_type_size == 1, "gsof_dop::OUTPUT_RECORD_TYPE must be 1 byte");
|
||||||
constexpr auto len_size = sizeof(gsof_dop::RECORD_LEN);
|
constexpr auto len_size = sizeof(gsof_dop::RECORD_LEN);
|
||||||
static_assert(len_size == 1);
|
static_assert(len_size == 1, "gsof_dop::RECORD_LEN must be 1 bytes");
|
||||||
constexpr auto dop_payload_size = dop_size - (dop_record_type_size + len_size);
|
constexpr auto dop_payload_size = dop_size - (dop_record_type_size + len_size);
|
||||||
static_assert(dop_payload_size == GSOF_DOP_LEN);
|
static_assert(dop_payload_size == GSOF_DOP_LEN, "dop_payload_size must be GSOF_DOP_LEN bytes");
|
||||||
|
|
||||||
payload_sz += sizeof(dop);
|
payload_sz += sizeof(dop);
|
||||||
memcpy(&buf[offset], &dop, sizeof(dop));
|
memcpy(&buf[offset], &dop, sizeof(dop));
|
||||||
|
@ -237,7 +237,7 @@ void GPS_Trimble::publish(const GPS_Data *d)
|
||||||
uint32_t unit_variance = htobe32(0);
|
uint32_t unit_variance = htobe32(0);
|
||||||
uint16_t n_epocs = htobe32(1); // Always 1 for kinematic.
|
uint16_t n_epocs = htobe32(1); // Always 1 for kinematic.
|
||||||
} pos_sigma {};
|
} pos_sigma {};
|
||||||
static_assert(sizeof(gsof_pos_sigma) - (sizeof(gsof_pos_sigma::OUTPUT_RECORD_TYPE) + sizeof(gsof_pos_sigma::RECORD_LEN)) == GSOF_POS_SIGMA_LEN);
|
static_assert(sizeof(gsof_pos_sigma) - (sizeof(gsof_pos_sigma::OUTPUT_RECORD_TYPE) + sizeof(gsof_pos_sigma::RECORD_LEN)) == GSOF_POS_SIGMA_LEN, "Trimble size check failed");
|
||||||
payload_sz += sizeof(pos_sigma);
|
payload_sz += sizeof(pos_sigma);
|
||||||
memcpy(&buf[offset], &pos_sigma, sizeof(pos_sigma));
|
memcpy(&buf[offset], &pos_sigma, sizeof(pos_sigma));
|
||||||
offset += sizeof(pos_sigma);
|
offset += sizeof(pos_sigma);
|
||||||
|
@ -536,7 +536,7 @@ void GPS_Trimble::send_gsof(const uint8_t *buf, const uint16_t size)
|
||||||
uint64_t GPS_Trimble::gsof_pack_double(const double& src)
|
uint64_t GPS_Trimble::gsof_pack_double(const double& src)
|
||||||
{
|
{
|
||||||
uint64_t dst;
|
uint64_t dst;
|
||||||
static_assert(sizeof(src) == sizeof(dst));
|
static_assert(sizeof(src) == sizeof(dst), "src and dst must have equal size");
|
||||||
memcpy(&dst, &src, sizeof(dst));
|
memcpy(&dst, &src, sizeof(dst));
|
||||||
dst = htobe64(dst);
|
dst = htobe64(dst);
|
||||||
return dst;
|
return dst;
|
||||||
|
@ -545,7 +545,7 @@ uint64_t GPS_Trimble::gsof_pack_double(const double& src)
|
||||||
uint32_t GPS_Trimble::gsof_pack_float(const float& src)
|
uint32_t GPS_Trimble::gsof_pack_float(const float& src)
|
||||||
{
|
{
|
||||||
uint32_t dst;
|
uint32_t dst;
|
||||||
static_assert(sizeof(src) == sizeof(dst));
|
static_assert(sizeof(src) == sizeof(dst), "src and dst must have equal size");
|
||||||
memcpy(&dst, &src, sizeof(dst));
|
memcpy(&dst, &src, sizeof(dst));
|
||||||
dst = htobe32(dst);
|
dst = htobe32(dst);
|
||||||
return dst;
|
return dst;
|
||||||
|
|
|
@ -93,7 +93,7 @@ void InertialLabs::send_packet(void)
|
||||||
pkt.gnss_extended_info.fix_type = 2;
|
pkt.gnss_extended_info.fix_type = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
pkt.differential_pressure = 0.5*sq(fdm.airspeed+fabsf(rand_float()*0.25))*1.0e4;
|
pkt.differential_pressure = 0.5*sq(fdm.airspeed+fabsF(rand_float()*0.25))*1.0e4;
|
||||||
pkt.supply_voltage = 12.3*100;
|
pkt.supply_voltage = 12.3*100;
|
||||||
pkt.temperature = 23.4*10;
|
pkt.temperature = 23.4*10;
|
||||||
|
|
||||||
|
|
|
@ -117,12 +117,6 @@ private:
|
||||||
const float max_current = 50.0f;
|
const float max_current = 50.0f;
|
||||||
const float base_supply_voltage = 50.0;
|
const float base_supply_voltage = 50.0;
|
||||||
|
|
||||||
// we share channels with the ArduPilot binary!
|
|
||||||
// Beware: the mavlink rangefinder and other stuff shares this channel.
|
|
||||||
const mavlink_channel_t mavlink_ch = (mavlink_channel_t)(MAVLINK_COMM_0+5);
|
|
||||||
|
|
||||||
class SIM *_sitl;
|
|
||||||
|
|
||||||
uint32_t last_sent_ms;
|
uint32_t last_sent_ms;
|
||||||
|
|
||||||
void update_receive();
|
void update_receive();
|
||||||
|
|
|
@ -41,13 +41,11 @@ private:
|
||||||
} registers;
|
} registers;
|
||||||
|
|
||||||
// 256 1-byte registers:
|
// 256 1-byte registers:
|
||||||
assert_storage_size<Registers::ByName, 256> assert_storage_size_registers_reg;
|
assert_storage_size<Registers::ByName, 256> assert_storage_size_registers_reg UNUSED_PRIVATE_MEMBER;
|
||||||
|
|
||||||
Bitmask<256> writable_registers;
|
Bitmask<256> writable_registers;
|
||||||
|
|
||||||
void reset();
|
void reset();
|
||||||
|
|
||||||
uint32_t cmd_take_reading_received_ms;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace SITL
|
} // namespace SITL
|
||||||
|
|
Loading…
Reference in New Issue