Index: sources/StateController.h =================================================================== diff -u -r75ca4bd322b1b11b7feb113086645979c95533a3 -rde65521102d2315e1812b8b14b2b21d6c4e5e949 --- sources/StateController.h (.../StateController.h) (revision 75ca4bd322b1b11b7feb113086645979c95533a3) +++ sources/StateController.h (.../StateController.h) (revision de65521102d2315e1812b8b14b2b21d6c4e5e949) @@ -80,6 +80,14 @@ #define RINSEBACK_SUBSTATE 4 #define TX_END_SUB_STATE 6 + // Rinseback defines + #define RINSEBACK_BACK_MAX_TIME_S (5 * SECONDS_PER_MINUTE) + #define RINSEBACK_END_TREATMENT_SIGNAL 999 + #define RINSEBACK_STOP_INIT_STATE 0 + #define RINSEBACK_RUN_STATE 1 + #define RINSEBACK_PAUSE_STATE 2 + #define RINSEBACK_STOP_STATE 3 + enum User_Command_ID { CMD_NONE = -1, CMD_STAND_BY = 0, @@ -104,11 +112,13 @@ }; enum Rinseback_Rqst { - RINSEBACK_START = 0, + RINSEBACK_START_RB = 0, + RINSEBACK_PAUSE_RB = 3, + RINSEBACK_RESUME_RB = 4, + RINSEBACK_END_RB = 5, RINSEBACK_SALINE_BOLUS = 6, RINSEBACK_END_TX = 8, RINSEBACK_BACK = 9, - }; struct Pre_Treatment_Params { @@ -176,7 +186,8 @@ bool hasPreTxTimerElapsed(Can::Message_ID_Enum msgID, Can::Can_Id canChan, quint32 &timerCountDownS, quint32 defaultTimeoutS); void handleUltrafiltrationValidation(const QVariant &payload); - void handleRinsebackSubstate(const QVariant &payload, quint32 &rbState); + void handleRinsebackSubstate(const QVariant &payload, float &accumVolML, quint32 &txState, quint32 &rbState); + bool isTreatmenStartRequested(const QVariant &payload); // State handlers void onIdleStateChange(bool active);