/************************************************************************** * * 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 Switches.h * * @author (last) Sean Nash * @date (last) 21-Jan-2025 * * @author (original) Sean Nash * @date (original) 19-Sep-2024 * ***************************************************************************/ #ifndef APP_SWITCHES_H_ #define APP_SWITCHES_H_ #include "TDCommon.h" /** * @defgroup Switches Switches * @brief Switches monitor unit. Provides functions for monitoring the status * of the TD switch positions. * * @addtogroup Switches * @{ */ // ********** public definitions ********** /// TD switches enumeration typedef enum switch_names { H9_SWCH = 0, ///< Front door switch NUM_OF_SWITCHES ///< Number of switches } SWITCH_T; /// TD switches data publish structure typedef struct { U32 h9Door; ///< Front door } SWITCHES_DATA_T; // ********** public function prototypes ********** void initSwitches( void ); void execSwitches( void ); OPN_CLS_STATE_T getSwitchState( SWITCH_T switchId ); void doorClosedRequired( BOOL door ); BOOL testSwitchesDataPublishIntervalOverride( MESSAGE_T *message ); BOOL testSwitchOverride( MESSAGE_T *message ); #endif /* APP_CONTROLLERS_SWITCHES_H_ */