/** @file     Rte_Dcm.h
  *
  * @brief    Application 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 RTE_DCM_H
#define RTE_DCM_H

#ifndef RTE_CORE
#ifdef RTE_APPLICATION_HEADER_FILE
#error Multiple application header files included.
#endif /* RTE_APPLICATION_HEADER_FILE */
#define RTE_APPLICATION_HEADER_FILE
#endif /* RTE_CORE */

/*******************************************************
 ***
 *** Includes
 ***
 *******************************************************/

#include "Rte.h"
#include "Rte_Intl.h"
#include "Rte_Dcm_Type.h"

#include "Rte_DataHandleType.h"

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#if defined(RTE_RUNNABLEAPI_Dcm_GetActiveProtocol)
   /* Do nothing for this and all elif clauses below (rte_sws_2751) */
#elif defined(RTE_RUNNABLEAPI_Dcm_GetSecurityLevel)
#elif defined(RTE_RUNNABLEAPI_Dcm_GetSesCtrlType)
#elif defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#elif defined(RTE_RUNNABLEAPI_Dcm_ResetToDefaultSession)
#elif defined(RTE_RUNNABLEAPI_Dcm_SetActiveDiagnostic)
#else
   /* None of above defined so define value including all APIs (rte_sws_2751) */
   #define RTE_PRV_ALL_API
#endif

/*******************************************************
 ***
 *** Constants
 ***
 *******************************************************/

#ifndef RTE_CORE
#define RTE_E_DCMServices_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_DCMServices_E_OK ((Std_ReturnType)0)
#define RTE_E_RoutineServices_DcmDspRoutine_CheckPgmPreCond_DCM_E_FORCE_RCRRP ((Std_ReturnType)12)
#define RTE_E_RoutineServices_DcmDspRoutine_CheckPgmPreCond_DCM_E_PENDING ((Std_ReturnType)10)
#define RTE_E_RoutineServices_DcmDspRoutine_CheckPgmPreCond_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_RoutineServices_DcmDspRoutine_CheckPgmPreCond_E_OK ((Std_ReturnType)0)
#define RTE_E_RoutineServices_DcmDspRoutine_Test_DCM_E_FORCE_RCRRP ((Std_ReturnType)12)
#define RTE_E_RoutineServices_DcmDspRoutine_Test_DCM_E_PENDING ((Std_ReturnType)10)
#define RTE_E_RoutineServices_DcmDspRoutine_Test_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_RoutineServices_DcmDspRoutine_Test_E_OK ((Std_ReturnType)0)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L1_DCM_E_COMPARE_KEY_FAILED ((Std_ReturnType)11)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L1_DCM_E_PENDING ((Std_ReturnType)10)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L1_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L1_E_OK ((Std_ReturnType)0)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L2_DCM_E_COMPARE_KEY_FAILED ((Std_ReturnType)11)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L2_DCM_E_PENDING ((Std_ReturnType)10)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L2_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L2_E_OK ((Std_ReturnType)0)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L3_DCM_E_COMPARE_KEY_FAILED ((Std_ReturnType)11)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L3_DCM_E_PENDING ((Std_ReturnType)10)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L3_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L3_E_OK ((Std_ReturnType)0)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L4_DCM_E_COMPARE_KEY_FAILED ((Std_ReturnType)11)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L4_DCM_E_PENDING ((Std_ReturnType)10)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L4_E_NOT_OK ((Std_ReturnType)1)
#define RTE_E_SecurityAccess_DSP_SEC_LEV_L4_E_OK ((Std_ReturnType)0)
#endif /* RTE_CORE */

/*******************************************************
 ***
 *** Public Types
 ***
 *******************************************************/

/* BEGIN: SWC types (core visible) */
struct Rte_CDS_Dcm {
   uint8 Rte_Dummy;
};
typedef struct Rte_CDS_Dcm Rte_CDS_Dcm;
/* END: SWC types (core visible) */

/*******************************************************
 ***
 *** Private Types
 ***
 *******************************************************/

/* BEGIN: SWC types (private) */
/* END: SWC types (private) */

/*******************************************************
 ***
 *** Instance Declarations
 ***
 *******************************************************/

#define RTE_START_SEC_CONST_UNSPECIFIED
#include "Rte_MemMap.h" /*lint !e537 permit multiple inclusion */
extern CONST(struct Rte_CDS_Dcm, RTE_CONST) Rte_Inst_Dcm;
#define RTE_STOP_SEC_CONST_UNSPECIFIED
#include "Rte_MemMap.h" /*lint !e537 permit multiple inclusion */


#ifndef RTE_CORE
typedef CONSTP2CONST(struct Rte_CDS_Dcm, AUTOMATIC, RTE_CONST) Rte_Instance;
#endif /* RTE_CORE */

/*******************************************************
 ***
 *** API Mapping macros
 ***
 *******************************************************/

/* 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) Rte_Call_Dcm_RoutineServices_DcmDspRoutine_CheckPgmPreCond_RequestResults(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                                         CONSTP2VAR(Dcm_RequestDataOut_DcmDspRoutine_CheckPgmPreCond_DcmDspRequestRoutineResultsOutSignal_0Type, AUTOMATIC, RTE_APPL_DATA) DataOut_DcmDspRequestRoutineResultsOutSignal_0,
                                                                                                         CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_RoutineServices_DcmDspRoutine_CheckPgmPreCond_Start(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                                CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_RoutineServices_DcmDspRoutine_CheckPgmPreCond_Stop(VAR(Dcm_StopDataIn_DcmDspRoutine_CheckPgmPreCond_DcmDspStopRoutineInSignal_0Type, AUTOMATIC) DataIn_DcmDspStopRoutineInSignal_0,
                                                                                               VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                               CONSTP2VAR(Dcm_StopDataOut_DcmDspRoutine_CheckPgmPreCond_DcmDspStopRoutineOutSignal_0Type, AUTOMATIC, RTE_APPL_DATA) DataOut_DcmDspStopRoutineOutSignal_0,
                                                                                               CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_RoutineServices_DcmDspRoutine_Test_RequestResults(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                              CONSTP2VAR(Dcm_RequestDataOut_DcmDspRoutine_Test_DcmDspRequestRoutineResultsOutSignal_0Type, AUTOMATIC, RTE_APPL_DATA) DataOut_DcmDspRequestRoutineResultsOutSignal_0,
                                                                                              CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_RoutineServices_DcmDspRoutine_Test_Start(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                     CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_RoutineServices_DcmDspRoutine_Test_Stop(VAR(Dcm_StopDataIn_DcmDspRoutine_Test_DcmDspStopRoutineInSignal_0Type, AUTOMATIC) DataIn_DcmDspStopRoutineInSignal_0,
                                                                                    VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                    CONSTP2VAR(Dcm_StopDataOut_DcmDspRoutine_Test_DcmDspStopRoutineOutSignal_0Type, AUTOMATIC, RTE_APPL_DATA) DataOut_DcmDspStopRoutineOutSignal_0,
                                                                                    CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L1_CompareKey(P2CONST(uint8, AUTOMATIC, RTE_APPL_DATA) Key,
                                                                                     VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                     CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L1_GetSeed(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                  CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) Seed,
                                                                                  CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L2_CompareKey(P2CONST(uint8, AUTOMATIC, RTE_APPL_DATA) Key,
                                                                                     VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                     CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L2_GetSeed(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                  CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) Seed,
                                                                                  CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L3_CompareKey(P2CONST(uint8, AUTOMATIC, RTE_APPL_DATA) Key,
                                                                                     VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                     CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L3_GetSeed(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                  CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) Seed,
                                                                                  CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L4_CompareKey(P2CONST(uint8, AUTOMATIC, RTE_APPL_DATA) Key,
                                                                                     VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                     CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L4_GetSeed(VAR(Dcm_OpStatusType, AUTOMATIC) OpStatus,
                                                                                  CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) Seed,
                                                                                  CONSTP2VAR(Dcm_NegativeResponseCodeType, AUTOMATIC, RTE_APPL_DATA) ErrorCode);
FUNC(Std_ReturnType, RTE_CODE) Rte_Read_Dcm_R_DataServices_DspData_ASW_VER_F189_Data(CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) data);
FUNC(Std_ReturnType, RTE_CODE) Rte_Read_Dcm_R_DataServices_DspData_MANU_DATE_F18B_Data(CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) data);
FUNC(Std_ReturnType, RTE_CODE) Rte_Read_Dcm_R_DataServices_DspData_SYS_SUP_ID_F18A_Data(CONSTP2VAR(uint8, AUTOMATIC, RTE_APPL_DATA) data);
FUNC(Std_ReturnType, RTE_CODE) Rte_Switch_Dcm_Pp_DcmDiagnosticSessionControl_MDGP_DcmDiagnosticSessionControl(VAR(uint8, AUTOMATIC) data);
FUNC(Std_ReturnType, RTE_CODE) Rte_Switch_Dcm_Pp_DcmEcuReset_MDGP_DcmEcuReset(VAR(uint8, AUTOMATIC) data);
FUNC(Std_ReturnType, RTE_CODE) Rte_Write_Dcm_P_DataServices_DspData_SYS_SUP_ID_F18A_Data(P2CONST(uint8, AUTOMATIC, RTE_APPL_DATA) data);
FUNC(uint8, RTE_CODE) Rte_Mode_Dcm_Rp_Mdg2_MDGP_Mdg2(void);
#define RTE_STOP_SEC_CODE
#include "Rte_MemMap.h" /*lint !e537 permit multiple inclusion */
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_RoutineServices_DcmDspRoutine_CheckPgmPreCond_RequestResults Rte_Call_Dcm_RoutineServices_DcmDspRoutine_CheckPgmPreCond_RequestResults /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_RoutineServices_DcmDspRoutine_CheckPgmPreCond_Start Rte_Call_Dcm_RoutineServices_DcmDspRoutine_CheckPgmPreCond_Start /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_RoutineServices_DcmDspRoutine_CheckPgmPreCond_Stop Rte_Call_Dcm_RoutineServices_DcmDspRoutine_CheckPgmPreCond_Stop /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_RoutineServices_DcmDspRoutine_Test_RequestResults Rte_Call_Dcm_RoutineServices_DcmDspRoutine_Test_RequestResults /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_RoutineServices_DcmDspRoutine_Test_Start Rte_Call_Dcm_RoutineServices_DcmDspRoutine_Test_Start /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_RoutineServices_DcmDspRoutine_Test_Stop Rte_Call_Dcm_RoutineServices_DcmDspRoutine_Test_Stop /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L1_CompareKey Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L1_CompareKey /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L1_GetSeed Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L1_GetSeed /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L2_CompareKey Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L2_CompareKey /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L2_GetSeed Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L2_GetSeed /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L3_CompareKey Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L3_CompareKey /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L3_GetSeed Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L3_GetSeed /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L4_CompareKey Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L4_CompareKey /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Call_SecurityAccess_DSP_SEC_LEV_L4_GetSeed Rte_Call_Dcm_SecurityAccess_DSP_SEC_LEV_L4_GetSeed /* enableTakeAddress */
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Mode_Rp_Mdg2_MDGP_Mdg2() (Rte_Mode_Dcm_Rp_Mdg2_MDGP_Mdg2())
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Read_R_DataServices_DspData_ASW_VER_F189_Data( data ) (Rte_Read_Dcm_R_DataServices_DspData_ASW_VER_F189_Data(data))
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Read_R_DataServices_DspData_MANU_DATE_F18B_Data( data ) (Rte_Read_Dcm_R_DataServices_DspData_MANU_DATE_F18B_Data(data))
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Read_R_DataServices_DspData_SYS_SUP_ID_F18A_Data( data ) (Rte_Read_Dcm_R_DataServices_DspData_SYS_SUP_ID_F18A_Data(data))
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
/* Inline read optimization; Rte_Switch_Pp_DcmControlDTCSetting_MDGP_DcmControlDTCSetting to direct read */
#define Rte_Switch_Pp_DcmControlDTCSetting_MDGP_DcmControlDTCSetting( data )  ( ((VAR(Std_ReturnType, AUTOMATIC))RTE_E_OK) )
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Switch_Pp_DcmDiagnosticSessionControl_MDGP_DcmDiagnosticSessionControl( data ) (Rte_Switch_Dcm_Pp_DcmDiagnosticSessionControl_MDGP_DcmDiagnosticSessionControl(data))
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Switch_Pp_DcmEcuReset_MDGP_DcmEcuReset( data ) (Rte_Switch_Dcm_Pp_DcmEcuReset_MDGP_DcmEcuReset(data))
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
/* Inline write optimization; Rte_Write_P_DataServices_DspData_ASW_VER_F189_Data to null body */
#define Rte_Write_P_DataServices_DspData_ASW_VER_F189_Data( data )  ( ((VAR(Std_ReturnType, AUTOMATIC))RTE_E_OK) )
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
/* Inline write optimization; Rte_Write_P_DataServices_DspData_MANU_DATE_F18B_Data to null body */
#define Rte_Write_P_DataServices_DspData_MANU_DATE_F18B_Data( data )  ( ((VAR(Std_ReturnType, AUTOMATIC))RTE_E_OK) )
#endif
#if defined(RTE_PRV_ALL_API) || defined(RTE_RUNNABLEAPI_Dcm_MainFunction)
#define Rte_Write_P_DataServices_DspData_SYS_SUP_ID_F18A_Data( data ) (Rte_Write_Dcm_P_DataServices_DspData_SYS_SUP_ID_F18A_Data(data))
#endif

#endif /* RTE_CORE */

/*******************************************************
 ***
 *** RE Prototypes
 ***
 *******************************************************/

#define Dcm_START_SEC_CODE
#include "Dcm_MemMap.h" /*lint !e537 permit multiple inclusion */
FUNC(Std_ReturnType, Dcm_CODE) Dcm_GetActiveProtocol(CONSTP2VAR(Dcm_ProtocolType, AUTOMATIC, RTE_APPL_DATA) ActiveProtocol);
FUNC(Std_ReturnType, Dcm_CODE) Dcm_GetSecurityLevel(CONSTP2VAR(Dcm_SecLevelType, AUTOMATIC, RTE_APPL_DATA) SecLevel);
FUNC(Std_ReturnType, Dcm_CODE) Dcm_GetSesCtrlType(CONSTP2VAR(Dcm_SesCtrlType, AUTOMATIC, RTE_APPL_DATA) SesCtrlType);
FUNC(Std_ReturnType, Dcm_CODE) Dcm_ResetToDefaultSession(void);
FUNC(Std_ReturnType, Dcm_CODE) Dcm_SetActiveDiagnostic(VAR(boolean, AUTOMATIC) active);
#define Dcm_STOP_SEC_CODE
#include "Dcm_MemMap.h" /*lint !e537 permit multiple inclusion */

/* Initial values for data element prototypes */

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

#endif /* !RTE_DCM_H */
