rusefi/win32_functional_tests/simulator/rusEfiFunctionalTest.cpp

138 lines
3.0 KiB
C++
Raw Normal View History

2015-07-10 06:01:56 -07:00
/**
* @file rusEfiFunctionalTest.cpp
*
* @date Mar 1, 2014
2016-04-02 20:01:58 -07:00
* @author Andrey Belomutskiy, (c) 2012-2016
2015-07-10 06:01:56 -07:00
*/
#include "global.h"
#include "boards.h"
#include "rusEfiFunctionalTest.h"
#include "console_io.h"
#include "eficonsole.h"
#include "engine_configuration.h"
#include "rusefi_enums.h"
#include "pwm_generator_logic.h"
#include "trigger_central.h"
#include "datalogging.h"
#include "algo.h"
#include "rpm_calculator.h"
2015-07-15 18:01:45 -07:00
#include "engine_sniffer.h"
2015-07-10 06:01:56 -07:00
#include "status_loop.h"
#include "trigger_emulator_algo.h"
#include "main_trigger_callback.h"
#include "allsensors.h"
#include "sensor_chart.h"
#include "injector_central.h"
#include "engine.h"
#include "tunerstudio.h"
#include "trigger_emulator.h"
#include "engine_controller.h"
#include "map_averaging.h"
2016-07-23 12:05:04 -07:00
#define DEFAULT_SIM_RPM 1200
#define DEFAULT_SNIFFER_THR 2500
2015-07-10 06:01:56 -07:00
EXTERN_ENGINE;
extern WaveChart waveChart;
static LoggingWithStorage sharedLogger("simulator");
void outputPinRegisterExt2(const char *msg, OutputPin *output, brain_pin_e brainPin, pin_output_mode_e *outputMode) {
}
2016-04-01 17:02:26 -07:00
int getRemainingStack(thread_t *otp) {
2015-07-10 06:01:56 -07:00
return 99999;
}
void idleDebug(const char *msg, percent_t value) {
}
float getMap(void) {
return getRawMap();
}
void rusEfiFunctionalTest(void) {
printToWin32Console("Running version:");
printToWin32Console("TODO");
2016-04-03 15:02:39 -07:00
initIntermediateLoggingBuffer();
2016-07-23 11:03:36 -07:00
initErrorHandling();
2016-04-03 15:02:39 -07:00
2016-12-18 10:01:47 -08:00
engine->setConfig(config);
2015-07-10 06:01:56 -07:00
initializeConsole(&sharedLogger);
initStatusLoop(engine);
initDataStructures(PASS_ENGINE_PARAMETER_F);
// todo: reduce code duplication with initEngineContoller
2016-07-23 12:05:04 -07:00
resetConfigurationExt(NULL, DEFAULT_ENGINE_TYPE PASS_ENGINE_PARAMETER);
2015-07-10 06:01:56 -07:00
prepareShapes(PASS_ENGINE_PARAMETER_F);
initAlgo(&sharedLogger, engineConfiguration);
2016-01-12 19:01:53 -08:00
commonInitEngineController(&sharedLogger);
2015-07-10 06:01:56 -07:00
initRpmCalculator(&sharedLogger, engine);
2015-09-13 09:01:42 -07:00
#if EFI_SENSOR_CHART || defined(__DOXYGEN__)
2015-07-10 06:01:56 -07:00
initSensorChart();
2015-09-13 09:01:42 -07:00
#endif /* EFI_SENSOR_CHART */
2015-07-10 06:01:56 -07:00
2015-07-15 22:05:04 -07:00
initTriggerCentral(&sharedLogger, engine);
2015-07-10 06:01:56 -07:00
initTriggerEmulator(&sharedLogger, engine);
#if EFI_MAP_AVERAGING || defined(__DOXYGEN__)
initMapAveraging(&sharedLogger, engine);
#endif /* EFI_MAP_AVERAGING */
initMainEventListener(&sharedLogger, engine);
startStatusThreads(engine);
initPeriodicEvents(PASS_ENGINE_PARAMETER_F);
2016-07-23 12:05:04 -07:00
setTriggerEmulatorRPM(DEFAULT_SIM_RPM, engine);
engineConfiguration->engineSnifferRpmThreshold = DEFAULT_SNIFFER_THR;
2015-07-10 06:01:56 -07:00
}
void printPendingMessages(void) {
updateDevConsoleState(engine);
2016-01-30 19:03:36 -08:00
waveChart.publishIfFull();
2015-07-10 06:01:56 -07:00
}
int isSerialOverTcpReady;
int maxNesting = 0;
bool isConsoleReady(void) {
return isSerialOverTcpReady;
}
void applyNewConfiguration(void) {
}
void onFatalError(const char *msg, const char * file, int line) {
printf("onFatalError %s %s%d", msg, file, line);
exit(-1);
}
void logMsg(const char *format, ...) {
// FILE * fp;
// fp = fopen ("simulator.log", "a");
//
// va_list(args);
// va_start(args, format);
// vfprintf(fp, format, args);
//
// fclose(fp);
}
SerialDriver * getConsoleChannel(void) {
return (SerialDriver *)EFI_CONSOLE_UART_DEVICE;
}