/**********************************************************************//** * * Copyright (c) 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 Reservoirs.h * * @date 18-Mar-2020 * @author S. Nash * * @brief header file for Reservoirs service module. * **************************************************************************/ #ifndef __RESERVOIRS_H__ #define __RESERVOIRS_H__ #include "DGCommon.h" /** * @defgroup Reservoirs Reservoirs * @brief Reservoirs service module. * Maintains reservoir set points and handles reservoir related commands from the HD * * @addtogroup Reservoirs * @{ */ // ********** public definitions ********** /// Enumeration of reservoirs. typedef enum Reservoirs { RESERVOIR_1 = 0, ///< Reservoir #1. RESERVOIR_2, ///< Reservoir #2. NUM_OF_RESERVOIRS ///< Number of reservoirs. } RESERVOIR_ID_T; // ********** public function prototypes ********** void initReservoirs( void ); void execReservoirs( void ); BOOL setActiveReservoirCmd( RESERVOIR_ID_T resID ); // handle switch reservoirs command from HD BOOL startFillCmd( U32 fillToVolMl ); // handle fill command from HD BOOL stopFillCmd( void ); // handle stop fill command from HD BOOL startDrainCmd( U32 drainToVolMl ); // handle drain command from HD BOOL stopDrainCmd( void ); // handle stop drain command from HD BOOL startTrimmerHeaterCmd( void ); // handle start trimmer heater control command from HD BOOL stopTrimmerHeaterCmd( void ); // handle stop trimmer heater control command from HD DATA_GET_PROTOTYPE( RESERVOIR_ID_T, getActiveReservoir ); DATA_GET_PROTOTYPE( U32, getReservoirFillVolumeTargetMl ); DATA_GET_PROTOTYPE( U32, getReservoirDrainVolumeTargetMl ); BOOL testSetDGActiveReservoirOverride( RESERVOIR_ID_T value ); BOOL testResetDGActiveReservoirOverride( void ); BOOL testSetReservoirFillVolumeMlOverride( U32 value ); BOOL testResetReservoirFillVolumeMlOverride( void ); BOOL testSetReservoirDrainVolumeMlOverride( U32 value ); BOOL testResetReservoirDrainVolumeMlOverride( void ); /**@}*/ #endif