Index: firmware/App/Controllers/PresOccl.h =================================================================== diff -u -r736cc5b56cc9c784ab1d8fc8687a73d190c35759 -r8a78d0bee10166f1b5d2c47474f57f8a7b279cba --- firmware/App/Controllers/PresOccl.h (.../PresOccl.h) (revision 736cc5b56cc9c784ab1d8fc8687a73d190c35759) +++ firmware/App/Controllers/PresOccl.h (.../PresOccl.h) (revision 8a78d0bee10166f1b5d2c47474f57f8a7b279cba) @@ -32,8 +32,14 @@ // ********** public definitions ********** -#define USE_NORMAL_STABILIZATION_PERIOD FALSE -#define USE_SHORT_STABILIZATION_PERIOD TRUE +/// Enumeration of stabilization periods. +typedef enum StabilizationPeriods +{ + STABILIZATION_PERIOD_OFF = 0, ///< Stabilization period off - 0 seconds + USE_SHORT_STABILIZATION_PERIOD, ///< Short stabilization period for air pump event - 10 seconds + USE_NORMAL_STABILIZATION_PERIOD, ///< Normal Stabilization period for system events, excluding airpump events ( treatment param change, resume treatment etc.,) - 60 seconds + NUM_OF_STABILIZATION_PERIODS ///< Number of stabilization periods +} STABILIZATION_PERIODS_T; /// Enumeration of pressure sensors monitored by this module. typedef enum PressureSensors @@ -46,12 +52,13 @@ /// Enumeration of arterial/venous pressure limits states. typedef enum PressureLimitsStates { - PRESSURE_LIMITS_STATE_OFF = 0, ///< Off - not pressure low/high alarms will be detected) - PRESSURE_LIMITS_STATE_IDLE, ///< Idle - in Treatment mode state where BP is stopped - no pressure low/high alarms - PRESSURE_LIMITS_STATE_WIDE, ///< Wide - in Treatment mode state where BP is running but wide limits apply - PRESSURE_LIMITS_STATE_STABILIZATION, ///< Stabilization - in Treatment mode state where BP is running (dialysis or stop), but need to stabilize first - PRESSURE_LIMITS_STATE_STABLE, ///< Stable - in Treatment mode state where BP is running (dialysis or stop) and limit windows apply - NUM_OF_PRESSURE_LIMITS_STATES ///< Number of pressure limits states + PRESSURE_LIMITS_STATE_OFF = 0, ///< Off - not pressure low/high alarms will be detected) + PRESSURE_LIMITS_STATE_IDLE, ///< Idle - in Treatment mode state where BP is stopped - no pressure low/high alarms + PRESSURE_LIMITS_STATE_WIDE, ///< Wide - in Treatment mode state where BP is running but wide limits apply + PRESSURE_LIMITS_STATE_STABILIZATION, ///< Stabilization - in Treatment mode state where BP is running (dialysis or stop), but need to stabilize first + PRESSURE_LIMITS_STATE_STABILIZATION_2, ///< Second stage stabilization - re adjust the pressure that has been drifted due to UF control etc and limit windows apply + PRESSURE_LIMITS_STATE_STABLE, ///< Stable - in Treatment mode state where BP is running (dialysis or stop) and limit windows apply + NUM_OF_PRESSURE_LIMITS_STATES ///< Number of pressure limits states } PRESSURE_LIMITS_STATES_T; /// Payload record structure for the pressure & occlusions data message. @@ -80,7 +87,7 @@ void setPressureLimitsToOuterBounds( void ); void updatePressureLimitWindows( void ); -void signalInitiatePressureStabilization( BOOL useShort ); +void signalInitiatePressureStabilization( STABILIZATION_PERIODS_T stabilizationPeriod ); void resetArtVenPressureOffsets( void ); void setArtVenPressureOffsets( void );