/************************************************************************** * * Copyright (c) 2019-2020 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 DialOutFlow.h * * @date 7-Jan-2019 * @author L. Baloa * * @brief DialOutFlow header file. * **************************************************************************/ #ifndef __DIALYSATE_OUT_FLOW_H__ #define __DIALYSATE_OUT_FLOW_H__ #include "Common.h" // ********** public definitions ********** typedef enum DialOutFlow_States { DIALOUT_FLOW_STOP_STATE = 0, DIALOUT_FLOW_RUN_UF_STATE, DIALOUT_FLOW_PAUSE_UF_STATE, NUM_OF_DIALOUT_FLOW_STATES } DIALOUT_FLOW_STATE_T; // ********** public function prototypes ********** void initDialOutFlow( void ); void execDialOutFlowMonitor( void ); void execDialOutFlowController( void ); // reset can only be done in DIALOUT_FLOW_STOP_STATE // Rx setting can be done in DIALOUT_FLOW_STOP_STATE and DIALOUT_FLOW_PAUSE_UF_STATE BOOL resetDialOutFlowRx(); BOOL setDialOutFlowRxTotalVolumeAndRxTime( U32 rxTotaVolume, U32 rxTotalTimeInMinutes, U32 rxFlowRate); DIALOUT_FLOW_STATE_T getDialOutFlowState( void ); BOOL setdialOutFlowState( DIALOUT_FLOW_STATE_T setNewState ); void setDialOutFlowNewState( DIALOUT_FLOW_STATE_T newState , BOOL isNewBag ); BOOL setDialOutFlowRxTotalVolumeAndRxTime( U32 rxTotaVolumeInMl, U32 rxTotalTimeInMinutes, U32 rxFlowRateinMlPerMin); #endif