Browse Source

Dataflash: fix shadowing of logstructure in SITL

master
Pierre Kancir 8 years ago committed by Francisco Ferreira
parent
commit
914bc53100
  1. 26
      libraries/DataFlash/DataFlash.cpp
  2. 6
      libraries/DataFlash/DataFlash.h

26
libraries/DataFlash/DataFlash.cpp

@ -133,29 +133,29 @@ static uint8_t count_commas(const char *string) @@ -133,29 +133,29 @@ static uint8_t count_commas(const char *string)
}
/// pretty-print field information from a log structure
void DataFlash_Class::dump_structure_field(const struct LogStructure *structure, const char *label, const uint8_t fieldnum)
void DataFlash_Class::dump_structure_field(const struct LogStructure *logstructure, const char *label, const uint8_t fieldnum)
{
::fprintf(stderr, " %s\n", label);
}
/// pretty-print log structures
/// @note structures MUST be well-formed
void DataFlash_Class::dump_structures(const struct LogStructure *structures, const uint8_t num_types)
void DataFlash_Class::dump_structures(const struct LogStructure *logstructures, const uint8_t num_types)
{
#if DEBUG_LOG_STRUCTURES
for (uint16_t i=0; i<num_types; i++) {
const struct LogStructure *structure = &structures[i];
::fprintf(stderr, "%s\n", structure->name);
const struct LogStructure *logstructure = &logstructures[i];
::fprintf(stderr, "%s\n", logstructure->name);
char label[32] = { };
uint8_t labeloffset = 0;
int8_t fieldnum = 0;
for (uint8_t j=0; j<strlen(structure->labels); j++) {
char labelchar = structure->labels[j];
for (uint8_t j=0; j<strlen(logstructure->labels); j++) {
char labelchar = logstructure->labels[j];
if (labelchar == '\0') {
break;
}
if (labelchar == ',') {
dump_structure_field(structure, label, fieldnum);
dump_structure_field(logstructure, label, fieldnum);
fieldnum++;
labeloffset = 0;
memset(label, '\0', 32);
@ -163,20 +163,20 @@ void DataFlash_Class::dump_structures(const struct LogStructure *structures, con @@ -163,20 +163,20 @@ void DataFlash_Class::dump_structures(const struct LogStructure *structures, con
label[labeloffset++] = labelchar;
}
}
dump_structure_field(structure, label, fieldnum);
dump_structure_field(logstructure, label, fieldnum);
::fprintf(stderr, "\n"); // just add a CR to the output
}
#endif
}
void DataFlash_Class::validate_structures(const struct LogStructure *structures, const uint8_t num_types)
void DataFlash_Class::validate_structures(const struct LogStructure *logstructures, const uint8_t num_types)
{
Debug("Validating structures");
bool passed = true;
bool seen_ids[256] = { };
for (uint16_t i=0; i<num_types; i++) {
const struct LogStructure *logstructure = &structures[i];
const struct LogStructure *logstructure = &logstructures[i];
#if DEBUG_LOG_STRUCTURES
Debug("offset=%d ID=%d NAME=%s\n", i, logstructure->msg_type, logstructure->name);
@ -219,15 +219,15 @@ void DataFlash_Class::validate_structures(const struct LogStructure *structures, @@ -219,15 +219,15 @@ void DataFlash_Class::validate_structures(const struct LogStructure *structures,
#else
void DataFlash_Class::dump_structure_field(const struct LogStructure *_structure, const char *label, const uint8_t fieldnum)
void DataFlash_Class::dump_structure_field(const struct LogStructure *logstructure, const char *label, const uint8_t fieldnum)
{
}
void DataFlash_Class::dump_structures(const struct LogStructure *structures, const uint8_t num_types)
void DataFlash_Class::dump_structures(const struct LogStructure *logstructures, const uint8_t num_types)
{
}
void DataFlash_Class::validate_structures(const struct LogStructure *structures, const uint8_t num_types)
void DataFlash_Class::validate_structures(const struct LogStructure *logstructures, const uint8_t num_types)
{
return;
}

6
libraries/DataFlash/DataFlash.h

@ -277,9 +277,9 @@ private: @@ -277,9 +277,9 @@ private:
private:
static DataFlash_Class *_instance;
void validate_structures(const struct LogStructure *structures, const uint8_t num_types);
void dump_structure_field(const struct LogStructure *structure, const char *label, const uint8_t fieldnum);
void dump_structures(const struct LogStructure *structures, const uint8_t num_types);
void validate_structures(const struct LogStructure *logstructures, const uint8_t num_types);
void dump_structure_field(const struct LogStructure *logstructure, const char *label, const uint8_t fieldnum);
void dump_structures(const struct LogStructure *logstructures, const uint8_t num_types);
void Log_Write_EKF_Timing(const char *name, uint64_t time_us, const struct ekf_timing &timing);

Loading…
Cancel
Save