/** @file     ECU_StartupTask.c
  * 
  * @brief    Task ECU_StartupTask body
  * 
  * @note     AUTOMATICALLY GENERATED FILE! DO NOT EDIT!
  * 
  * @note     Generated by ETAS GmbH  RTA-RTE v5.8.2  (R4.0 backend version: v7.8.5 (Build 46241))
  */

#define RTE_CORE

#include "Rte_Const.h"
#if !defined(RTE_VENDOR_MODE)
#pragma message "Compiling an individual task file but RTE_VENDOR_MODE not defined. Compiling a stale file?"
#endif /* !defined(RTE_VENDOR_MODE) */
#if defined(RTE_USE_TASK_HEADER)
#include "ECU_StartupTask.h"
#else /* defined(RTE_USE_TASK_HEADER) */
#include "Os.h"
#endif /* defined(RTE_USE_TASK_HEADER) */
#if defined(RTE_REQUIRES_IOC)
#include "Ioc.h"
#endif /* defined(RTE_REQUIRES_IOC) */
#include "Rte.h"
#include "Rte_Intl.h"
#include "Rte_Type.h"
#include "Rte_DataHandleType.h"

extern void BswM_MainFunction(void);

extern FUNC(void, RTE_CODE) SchM_IModeInit(void);

/* Runnable entity prototypes */
#define ECUM_START_SEC_CODE
#include "MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(void, ECUM_CODE) EcuM_StartupTwo(void);
#define ECUM_STOP_SEC_CODE
#include "MemMap.h" /*lint !e537 permit multiple inclusion */

#define RTE_START_SEC_TASKBODY
#include "MemMap.h" /*lint !e537 permit multiple inclusion */
TASK(ECU_StartupTask)
{
   /* Box: Implicit Buffer Initialization begin */
   /* Box: Implicit Buffer Initialization end */
   /* Box: Implicit Buffer Fill begin */
   /* Box: Implicit Buffer Fill end */
   {
      /* Box: BSWImpl3_EcuM begin */
      EcuM_StartupTwo();
      /* Box: BSWImpl3_EcuM end */

      /* ETAS: SchM was initialized before BswM,
       * so mode initialization didn't trigger the BswM_RequestMode
       * Need to call it again
       */
      SchM_IModeInit();

      /* ETAS: BswM_MainFunction is scheduled with RTE,
       * Need to call BswM_MainFunction to trigger the start machine execution
       */
      BswM_MainFunction();
   }
   /* Box: Implicit Buffer Flush begin */
   /* Box: Implicit Buffer Flush end */
   TerminateTask();
} /* ECU_StartupTask */
#define RTE_STOP_SEC_TASKBODY
#include "MemMap.h" /*lint !e537 permit multiple inclusion */

