/************************************************************************** * * Copyright (c) 2024-2025 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 ModePreGenPermeateDefeatured.h * * @author (last) Michael Garthwaite * @date (last) 03-Mar-2025 * * @author (original) Michael Garthwaite * @date (original) 03-Mar-2025 * ***************************************************************************/ #ifndef __MODE_PRE_GENP_DEF_H__ #define __MODE_PRE_GENP_DEF_H__ #include "FPCommon.h" #include "FPDefs.h" /** * @defgroup FPPreGenPermeateDefeaturedMode FPPreGenPermeateDefeaturedMode * @brief Pre-Generate Permeate Defeatured unit. Manages water generation functions via a state machine. * * @addtogroup FPPreGenPermeateDefeaturedMode * @{ */ // ********** public definitions ********** /// Pre-Generate Permeate defeatured mode data structure typedef struct { U32 preGenPermeateDefExecState; ///< Pre-Generate Permeate Defeatured execution state } PRE_GEN_PERMEATE_DEF_MODE_DATA_T; // ********** public function prototypes ********** void initPreGenPermeateDefeaturedMode( void ); // Initialize this Pre gen permeate mode unit U32 transitionToPreGenPermeateDefeaturedMode( void ); // Transition to Pre gen permeate mode U32 execPreGenPermeateDefeaturedMode( void ); // Execute the Pre gen permeate mode state machine (call from OperationModes) BOOL requestPreGenDefStart( void ); // Request to start pre generate BOOL requestPreGenDefStop( void ); // Request to stop pre generate BOOL getPreGenPermeateRequest( void ); // Retrieve pre gen request FP_PRE_GENP_DEF_MODE_STATE_T getCurrentPreGenPermeateDefState( void ); // Get the current state of the Pre gen water mode BOOL testPreGenPermeateDefDataPublishIntervalOverride( MESSAGE_T *message ); // override broadcast interval for Pre gen permeate /**@}*/ #endif