/************************************************************************** * * 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 ModeStandby.h * * @author (last) Vinayakam Mani * @date (last) 07-Aug-2024 * * @author (original) Vinayakam Mani * @date (original) 06-Aug-2024 * ***************************************************************************/ #ifndef __MODE_STANDBY_H__ #define __MODE_STANDBY_H__ #include "DDCommon.h" #include "DDDefs.h" /** * @defgroup DDStandbyMode DDStandbyMode * @brief Standby mode unit. Manages standby mode functions via a state machine. * * @addtogroup DDStandbyMode * @{ */ // ********** public definitions ********** /// Standby mode data structure typedef struct { U32 timeout; ///< Timeout. U32 countdown; ///< Count down. } STANDBY_MODE_DATA_T; // ********** public function prototypes ********** void initStandbyMode( void ); // initialize this unit U32 transitionToStandbyMode( void ); // prepares for transition to standby mode U32 execStandbyMode( void ); // execute the standby mode state machine (call from OperationModes) BOOL requestDDStart( void ); // TD requests DD start (go to generation idle mode) BOOL signalAbortWaterSampling( void ); // TD signal to abort water sampling. BOOL startDDFlush( void ); // TD start flush mode BOOL startDDHeatDisinfect( void ); // TD start heat disinfect mode BOOL startDDHeatDisinfectActiveCool( void ); DD_STANDBY_MODE_STATE_T getCurrentStandbyState( void ); // get the current state of the standby mode. BOOL startDDROPermeateSample( void ); // TD start RO permeate sample BOOL testSetFilterFlushTimePeriodOverride( U32 value ); // set filter flush time period override. BOOL testResetFilterFlushTimePeriodOverride( void ); // reset filter flush time period override. /**@}*/ #endif