Index: firmware/App/Monitors/Level.h =================================================================== diff -u -r229341f9eb23fec730cdf9b1f8f3960de2daf384 -r371726565d87e57f0aa571740b294be6d7310e11 --- firmware/App/Monitors/Level.h (.../Level.h) (revision 229341f9eb23fec730cdf9b1f8f3960de2daf384) +++ firmware/App/Monitors/Level.h (.../Level.h) (revision 371726565d87e57f0aa571740b294be6d7310e11) @@ -36,11 +36,19 @@ typedef enum level_names { D6_LEVL = 0, ///< floater switch low, medium and high status + FIRST_DD_LEVL = D6_LEVL, ///< First DD level D63_LEVL, ///< bicarb level low or high status D46_LEVL, ///< Spent dialysate air separation chamber level low or high status + LAST_DD_LEVL = D46_LEVL, ///< Last DD level + P25_LEVL, ///< FP level sensor + FIRST_FP_LEVL = P25_LEVL, ///< FP first level sensor + LAST_FP_LEVL = P25_LEVL, ///< FP last level sensor NUM_OF_LEVELS ///< Number of levels -} LELVEL_T; +} LEVEL_T; +#define NUM_OF_DD_LEVL ( ( LAST_DD_LEVL - FIRST_DD_LEVL ) + 1 ) +#define NUM_OF_IOFP_LEVL ( ( LAST_FP_LEVL - FIRST_FP_LEVL ) + 1 ) + /// floater and level sensor states. typedef enum level_States { @@ -57,16 +65,24 @@ U32 d6Level; ///< Floater level U32 d63Level; ///< Bicarb level U32 d46Level; ///< Spent dialysate level -} LEVEL_DATA_T; +} DD_LEVEL_DATA_T; +/// FP floater and level sensor data publish structure +typedef struct +{ + U32 p25Level; ///< Floater level +} FP_LEVEL_DATA_T; + // ********** public function prototypes ********** void initLevels( void ); void execLevels( void ); -LEVEL_STATE_T getLevelStatus( LELVEL_T levelId ); +LEVEL_STATE_T getLevelStatus( LEVEL_T levelId ); BOOL testLevelsDataPublishIntervalOverride( MESSAGE_T *message ); BOOL testLevelStatusOverride( MESSAGE_T *message ); +BOOL testFPLevelsDataPublishIntervalOverride( MESSAGE_T *message ); +BOOL testFPLevelStateOverride( MESSAGE_T *message ); /**@}*/