/************************************************************************** * * Copyright (c) 2024-2024 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 Flow.h * * @author (last) Sean Nash * @date (last) 21-Nov-2024 * * @author (original) Sean Nash * @date (original) 21-Nov-2024 * ***************************************************************************/ #ifndef __FLOW_H__ #define __FLOW_H__ #include "DDCommon.h" #include "FlowSensor.h" /** * @defgroup Flow Flow * @brief Flow sensors monitor unit. Monitors the various RO flow * sensors. * * @addtogroup Flow * @{ */ // ********** public definitions ********** /// Flow data record. typedef struct { F32 p7Flow; ///< P7 flow rate at water inlet. F32 p16Flow; ///< P16 flow rate at RO filter outlet. } FLOW_TEMP_DATA_T; // ********** public function prototypes ********** void initFlow( void ); void execFlowMonitor( void ); F32 getFilteredFlow( FLOW_SENSORS_T sensor ); F32 getFilteredFlowSensorTemperature( FLOW_SENSORS_T sensor ); BOOL testFlowSensorDataPublishIntervalOverride( MESSAGE_T *message ); BOOL testFlowSensorFilteredReadingsOverride( MESSAGE_T *message ); BOOL testFlowSensorFilteredTemperatureReadingsOverride( MESSAGE_T *message ); /**@}*/ #endif