Index: firmware/App/Services/AlarmMgmt.h =================================================================== diff -u -r74be223d47ea7bb0ac7d814e74d3627d830a5fac -r23ad90c3d5f08e67a1142a68c73d79fedb752da9 --- firmware/App/Services/AlarmMgmt.h (.../AlarmMgmt.h) (revision 74be223d47ea7bb0ac7d814e74d3627d830a5fac) +++ firmware/App/Services/AlarmMgmt.h (.../AlarmMgmt.h) (revision 23ad90c3d5f08e67a1142a68c73d79fedb752da9) @@ -1,14 +1,14 @@ /************************************************************************** * -* Copyright (c) 2019-2021 Diality Inc. - All Rights Reserved. +* Copyright (c) 2019-2022 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file AlarmMgmt.h * -* @author (last) Sean Nash -* @date (last) 13-Aug-2021 +* @author (last) Michael Garthwaite +* @date (last) 11-Mar-2022 * * @author (original) Sean Nash * @date (original) 07-Nov-2019 @@ -71,11 +71,11 @@ BOOL noResume; ///< Treatment may not be resumed at this time BOOL noRinseback; ///< Rinseback may not be initiated at this time BOOL noEndTreatment; ///< Ending the treatment is not an option at this time - BOOL noNewTreatment; ///< No new treatments may be started even if current treatment is ended + BOOL noBloodRecirc; ///< No blood re-circulation allowed at this time BOOL noDialRecirc; ///< No dialysate re-circulation allowed at this time - BOOL usrACKRequired; ///< The user must acknowledge top alarm + BOOL ok; ///< Display OK button instead of other options BOOL noMinimize; ///< Prevent user from minimizing the alarm window - BOOL lampOn; ///< The alarm lamp is on + BOOL lampOn; ///< The alarm lamp is on } COMP_ALARM_STATUS_T; /// Record structure for unsigned integer alarm data. @@ -132,8 +132,13 @@ typedef struct { U32 alarm; ///< ID of alarm that was triggered - ALARM_DATA_T almData1; ///< Supporting data #1 - ALARM_DATA_T almData2; ///< Supporting data #2 + U32 almDataType1; ///< Supporting data type #1 + U32 almData1; ///< Supporting data #1 + U32 almDataType2; ///< Supporting data type #2 + U32 almData2; ///< Supporting data #2 + U32 almPriority; ///< Alarm priority + U32 almRank; ///< Alarm rank + BOOL almClrTopOnly; ///< Alarm clear (when on top) should only clear top alarm } ALARM_TRIGGERED_PAYLOAD_T; #pragma pack(pop) @@ -148,8 +153,14 @@ U32 silenceExpiresIn; ///< Silencing of alarms expires in this many seconds U16 alarmsFlags; ///< Bit flags: 1 = true, 0 = false for each bit flag } ALARM_COMP_STATUS_PAYLOAD_T; -#pragma pack(pop) +#pragma pack(pop) +/// Alarm ID data publish +typedef struct +{ + U32 alarmID; ///< Alarm ID. +} ALARM_ID_DATA_PUBLISH_T; + // ********** public function prototypes ********** void initAlarmMgmt( void ); @@ -165,13 +176,13 @@ void signalAlarmUserActionInitiated( ALARM_USER_ACTION_T action ); BOOL isAlarmActive( ALARM_ID_T alarm ); BOOL isAnyAlarmActive( void ); +BOOL isBloodRecircBlocked( void ); BOOL isDialysateRecircBlocked( void ); BOOL doesAlarmStatusIndicateStop( void ); ALARM_PRIORITY_T getCurrentAlarmStatePriority( void ); BOOL isAlarmRecoverable( ALARM_ID_T alarm ); void setAlarmAudioVolume( U32 volumeLevel ); -BOOL getNoNewTreatmentStatus( void ); void handleActiveAlarmListRequest( void ); U32 getAlarmAudioVolume( void );