minor trigger refactoring

This commit is contained in:
rusefillc 2022-11-06 00:59:29 -04:00
parent e3fd84ed08
commit 36d5b1fbb6
2 changed files with 9 additions and 15 deletions

View File

@ -150,32 +150,32 @@ TEST(misc, testAngleResolver) {
event_trigger_position_s injectionStart; event_trigger_position_s injectionStart;
printf("*************************************************** testAngleResolver 0\r\n"); printf("*************************************************** testAngleResolver 0\r\n");
findTriggerPosition(&engine->triggerCentral.triggerShape, &engine->triggerCentral.triggerFormDetails,&injectionStart, -122); injectionStart.setAngle(-122);
ASSERT_EQ( 2, injectionStart.triggerEventIndex) << "eventIndex@0"; ASSERT_EQ( 2, injectionStart.triggerEventIndex) << "eventIndex@0";
ASSERT_NEAR(0.24, injectionStart.angleOffsetFromTriggerEvent, EPS5D); ASSERT_NEAR(0.24, injectionStart.angleOffsetFromTriggerEvent, EPS5D);
printf("*************************************************** testAngleResolver 0.1\r\n"); printf("*************************************************** testAngleResolver 0.1\r\n");
findTriggerPosition(&engine->triggerCentral.triggerShape, &engine->triggerCentral.triggerFormDetails,&injectionStart, -80); injectionStart.setAngle(-80);
ASSERT_EQ( 2, injectionStart.triggerEventIndex) << "eventIndex@0"; ASSERT_EQ( 2, injectionStart.triggerEventIndex) << "eventIndex@0";
ASSERT_FLOAT_EQ(42.24, injectionStart.angleOffsetFromTriggerEvent); ASSERT_FLOAT_EQ(42.24, injectionStart.angleOffsetFromTriggerEvent);
printf("*************************************************** testAngleResolver 0.2\r\n"); printf("*************************************************** testAngleResolver 0.2\r\n");
findTriggerPosition(&engine->triggerCentral.triggerShape, &engine->triggerCentral.triggerFormDetails,&injectionStart, -54); injectionStart.setAngle(-54);
ASSERT_EQ( 2, injectionStart.triggerEventIndex) << "eventIndex@0"; ASSERT_EQ( 2, injectionStart.triggerEventIndex) << "eventIndex@0";
ASSERT_FLOAT_EQ(68.2400, injectionStart.angleOffsetFromTriggerEvent); ASSERT_FLOAT_EQ(68.2400, injectionStart.angleOffsetFromTriggerEvent);
printf("*************************************************** testAngleResolver 0.3\r\n"); printf("*************************************************** testAngleResolver 0.3\r\n");
findTriggerPosition(&engine->triggerCentral.triggerShape, &engine->triggerCentral.triggerFormDetails,&injectionStart, -53); injectionStart.setAngle(-53);
ASSERT_EQ(2, injectionStart.triggerEventIndex); ASSERT_EQ(2, injectionStart.triggerEventIndex);
ASSERT_FLOAT_EQ(69.24, injectionStart.angleOffsetFromTriggerEvent); ASSERT_FLOAT_EQ(69.24, injectionStart.angleOffsetFromTriggerEvent);
printf("*************************************************** testAngleResolver 1\r\n"); printf("*************************************************** testAngleResolver 1\r\n");
findTriggerPosition(&engine->triggerCentral.triggerShape, &engine->triggerCentral.triggerFormDetails,&injectionStart, 0); injectionStart.setAngle(0);
ASSERT_EQ(2, injectionStart.triggerEventIndex); ASSERT_EQ(2, injectionStart.triggerEventIndex);
ASSERT_FLOAT_EQ(122.24, injectionStart.angleOffsetFromTriggerEvent); ASSERT_FLOAT_EQ(122.24, injectionStart.angleOffsetFromTriggerEvent);
printf("*************************************************** testAngleResolver 2\r\n"); printf("*************************************************** testAngleResolver 2\r\n");
findTriggerPosition(&engine->triggerCentral.triggerShape, &engine->triggerCentral.triggerFormDetails,&injectionStart, 56); injectionStart.setAngle(56);
ASSERT_EQ(2, injectionStart.triggerEventIndex); ASSERT_EQ(2, injectionStart.triggerEventIndex);
ASSERT_FLOAT_EQ(178.24, injectionStart.angleOffsetFromTriggerEvent); ASSERT_FLOAT_EQ(178.24, injectionStart.angleOffsetFromTriggerEvent);

View File

@ -159,19 +159,13 @@ TEST(trigger, test1995FordInline6TriggerDecoder) {
event_trigger_position_s position; event_trigger_position_s position;
ASSERT_EQ( 0, engineConfiguration->globalTriggerAngleOffset) << "globalTriggerAngleOffset"; ASSERT_EQ( 0, engineConfiguration->globalTriggerAngleOffset) << "globalTriggerAngleOffset";
findTriggerPosition(&engine->triggerCentral.triggerShape, position.setAngle(0);
&engine->triggerCentral.triggerFormDetails,
&position, 0);
assertTriggerPosition(&position, 0, 0); assertTriggerPosition(&position, 0, 0);
findTriggerPosition(&engine->triggerCentral.triggerShape, position.setAngle(200);
&engine->triggerCentral.triggerFormDetails,
&position, 200);
assertTriggerPosition(&position, 3, 20); assertTriggerPosition(&position, 3, 20);
findTriggerPosition(&engine->triggerCentral.triggerShape, position.setAngle(360);
&engine->triggerCentral.triggerFormDetails,
&position, 360);
assertTriggerPosition(&position, 6, 0); assertTriggerPosition(&position, 6, 0);
eth.applyTriggerWaveform(); eth.applyTriggerWaveform();