/************************************************************************** * * Copyright (c) 2019-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 SafetyShutdown.h * * @author (last) Dara Navaei * @date (last) 17-Jan-2023 * * @author (original) Dara Navaei * @date (original) 05-Nov-2019 * ***************************************************************************/ #ifndef __SAFETY_SHUTDOWN_H__ #define __SAFETY_SHUTDOWN_H__ #include "DGCommon.h" /** * @defgroup SafetyShutdown SafetyShutdown * @brief Safety Shutdown module. Allows any module to activate the safety shutdown signal. * * @addtogroup SafetyShutdown * @{ */ // ********** public definitions ********** /// Safety shutdown broadcast data typedef struct { U32 isSafetyShutdownActivated; ///< Is safety shutdown active boolean flag } DG_SAFETY_SHUTDOWN_DATA_T; // ********** public function prototypes ********** void initSafetyShutdown( void ); void activateSafetyShutdown( void ); BOOL isSafetyShutdownActivated( void ); SELF_TEST_STATUS_T execSafetyShutdownTest( void ); void resetSafetyShutdownPOSTState( void ); BOOL testSetSafetyShutdownOverride( U32 value ); BOOL testResetSafetyShutdownOverride( void ); /**@}*/ #endif