/************************************************************************** * * 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; #pragma pack(push, 1) typedef struct DialOutBroadCastingStructure { S16 flowState; S16 totalTargetVolMl; S16 measuredVolMl; S16 pwmPCT; S16 motorCurrentMA; S16 motorSpeedRPM; } DIALOUT_BROADCASTING_T; #pragma pack(pop) // ********** public function prototypes ********** void initDialOutFlow( void ); void execDialOutFlowMonitor( void ); void execDialOutFlowController( void ); BOOL setDialOutFlowNewState( DIALOUT_FLOW_STATE_T newState , BOOL isNewBag ); BOOL setDialOutFlowRxTotalVolumeAndRxTime( U16 rxTotaVolumeInMl, U16 rxTotalTimeInMinutes, U16 rxFlowRateinMlPerMin); DATA_GET_PROTOTYPE( F32, getTotalTargetDialOutUFVolumeInMl ); DATA_GET_PROTOTYPE( F32, getTotalMeasuredUFVolumeInMl); DATA_GET_PROTOTYPE( F32, getMeasuredDialOutPumpMCSpeed ); DATA_GET_PROTOTYPE( F32, getMeasuredDialOutPumpMCCurrent ); DATA_GET_PROTOTYPE( F32, getLoadCellVolumeInMl); //TODO: DATA_GET_PROTOTYPE( F32, getMeasuredDialOutVolPumpRotorSpeed ); //TODO: DATA_GET_PROTOTYPE( F32, getMeasuredDialOutPumpSpeed ); #endif