0900cefba9
This commit changes the way libraries headers are included in source files: - If the header is in the same directory the source belongs to, so the notation '#include ""' is used with the path relative to the directory containing the source. - If the header is outside the directory containing the source, then we use the notation '#include <>' with the path relative to libraries folder. Some of the advantages of such approach: - Only one search path for libraries headers. - OSs like Windows may have a better lookup time.
61 lines
1.1 KiB
C++
61 lines
1.1 KiB
C++
/*
|
|
AP_PerfMon
|
|
Code by Randy Mackay
|
|
*/
|
|
|
|
#include <AP_Common/AP_Common.h>
|
|
#include <AP_Progmem/AP_Progmem.h>
|
|
#include <AP_Param/AP_Param.h>
|
|
#include <AP_Math/AP_Math.h>
|
|
#include <AP_HAL/AP_HAL.h>
|
|
#include <AP_HAL_AVR/AP_HAL_AVR.h>
|
|
#include <StorageManager/StorageManager.h>
|
|
#include <AP_PerfMon/AP_PerfMon.h> // PerfMonitor library
|
|
|
|
const AP_HAL::HAL& hal = AP_HAL_BOARD_DRIVER;
|
|
|
|
AP_PERFMON_REGISTER_FN(setup)
|
|
AP_PERFMON_REGISTER_FN(loop)
|
|
AP_PERFMON_REGISTER_FN(testFn)
|
|
AP_PERFMON_REGISTER_FN(testFn2)
|
|
|
|
void setup()
|
|
{
|
|
AP_PERFMON_FUNCTION(setup)
|
|
|
|
hal.console->print_P(PSTR("Performance Monitor test v1.1\n"));
|
|
}
|
|
|
|
void loop()
|
|
{
|
|
AP_PERFMON_FUNCTION(loop)
|
|
|
|
int16_t i = 0;
|
|
|
|
for( i=0; i<10; i++ ) {
|
|
testFn();
|
|
}
|
|
|
|
AP_PerfMon::DisplayAndClear(5);
|
|
//AP_PerfMon::DisplayResults();
|
|
//AP_PerfMon::ClearAll();
|
|
|
|
hal.scheduler->delay(2000);
|
|
}
|
|
|
|
void testFn()
|
|
{
|
|
AP_PERFMON_FUNCTION(testFn)
|
|
hal.scheduler->delay(10);
|
|
testFn2();
|
|
hal.scheduler->delay(10);
|
|
}
|
|
|
|
void testFn2()
|
|
{
|
|
AP_PERFMON_FUNCTION(testFn2)
|
|
hal.scheduler->delay(10);
|
|
}
|
|
|
|
AP_HAL_MAIN();
|