/** @file     SchM_BswM.h
  *
  * @brief    Basic Software Scheduler Module Interlink header file
  *
  * @note     AUTOMATICALLY GENERATED FILE! DO NOT EDIT!
  *
  * @note     Generated by ETAS RTA-RTE
  * @note     Version 6.5.0 
  *
  * @date     Thu Mar  7 11:39:19 2019
  */

#ifndef SchM_BswM
#define SchM_BswM

#include "SchM_BswM_Type.h"
#include "Rte_Intl.h"
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#if defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchAppRun)
   /* Do nothing for this and all elif clauses below (rte_sws_2751) */
#elif defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchPostRun)
#elif defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchPrepShutdown)
#elif defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchRun)
#elif defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchStartupTwo)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_APP_POST_RUN)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_APP_RUN)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_PREP_SHUTDOWN)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_RUN)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_STARTUP_ONE)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_STARTUP_TWO)
#elif defined(RTE_RUNNABLEAPI_SE_BswM_MainFunction)
#else
   /* None of above defined so define value including all APIs (rte_sws_2751) */
   #define RTE_PRV_ALL_API
#endif

/* API Mapping Macros */
#ifndef RTE_CORE

#define RTE_START_SEC_CODE
#include "Rte_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(Std_ReturnType, RTE_CODE) SchM_Switch_BswM_MDGP_AUTOSAR_BswM_ModeDeclarationGroups_MDG_ECUM_STATE(VAR(uint8, AUTOMATIC) data);
FUNC(uint8, RTE_CODE) SchM_Mode_BswM_MDGR_BswM_MRP_BswM_MDG(void);
#define RTE_STOP_SEC_CODE
#include "Rte_MemMap.h" /*lint !e537 permit multiple inclusion */
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_APP_POST_RUN) || defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_APP_RUN) || defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_PREP_SHUTDOWN) || defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_RUN) || defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_STARTUP_ONE) || defined(RTE_RUNNABLEAPI_SE_BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_STARTUP_TWO)
#define SchM_Mode_BswM_MDGR_BswM_MRP_BswM_MDG() (SchM_Mode_BswM_MDGR_BswM_MRP_BswM_MDG())
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchAppRun) || defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchPostRun) || defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchPrepShutdown) || defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchRun) || defined(RTE_RUNNABLEAPI_CE_BswM_Action_BswM_AI_BswMSwitchStartupTwo)
#define SchM_Switch_BswM_MDGP_AUTOSAR_BswM_ModeDeclarationGroups_MDG_ECUM_STATE( data ) (SchM_Switch_BswM_MDGP_AUTOSAR_BswM_ModeDeclarationGroups_MDG_ECUM_STATE(data))
#endif

#endif /* RTE_CORE */

/*******************************************************
 ***
 *** Schedulable Entity Prototypes
 ***
 *******************************************************/

#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_APP_POST_RUN(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_APP_RUN(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_PREP_SHUTDOWN(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_RUN(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_STARTUP_ONE(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_Cfg_DfrdBswNotification_BswM_MRP_BswM_MDG_ECUM_STATE_STARTUP_TWO(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
#define BSWM_START_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, BSWM_CODE) BswM_MainFunction(void);
#define BSWM_STOP_SEC_CODE
#include "BswM_MemMap.h" /*lint !e537 permit multiple inclusion */

#ifdef __cplusplus
} /* extern C */
#endif /* __cplusplus */

#endif /* !SchM_BswM */
