1 /* -------------------------------- Arctic Core ------------------------------
\r
2 * Arctic Core - the open source AUTOSAR platform http://arccore.com
\r
4 * Copyright (C) 2009 ArcCore AB <contact@arccore.com>
\r
6 * This source code is free software; you can redistribute it and/or modify it
\r
7 * under the terms of the GNU General Public License version 2 as published by the
\r
8 * Free Software Foundation; See <http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt>.
\r
10 * This program is distributed in the hope that it will be useful, but
\r
11 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
\r
12 * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
\r
14 * -------------------------------- Arctic Core ------------------------------*/
\r
20 #include "Std_Types.h"
\r
22 void SchM_Init( void );
\r
23 void SchM_Deinit( void );
\r
24 void SchM_GetVersionInfo( Std_VersionInfoType *versionInfo );
\r
26 #define SchM_Enter( _module, _exc_area ) \
\r
27 SchM_Enter_EcuM ## _module ## _exc_area
\r
29 #define SchM_Exit( _module, _exc_area ) \
\r
30 SchM_Enter_EcuM ## _module ## _exc_area
\r
33 #define CONCAT_(_x,_y) _x##_y
\r
40 #define SCHM_DECLARE(_mod) \
\r
41 SchM_InfoType SchM_Info_ ## _mod
\r
43 #define SCHM_MAINFUNCTION(_mod,_func) \
\r
44 if( (++SchM_Info_ ## _mod.timer % SCHM_MAINFUNCTION_CYCLE_ ## _mod )== 0 ) { \
\r
46 SchM_Info_ ## _mod.timer = 0; \
\r