]> rtime.felk.cvut.cz Git - arc.git/blob - include/Fee_ConfigTypes.h
realized I removed some stuff unnecessarely during mpc5606b port
[arc.git] / include / Fee_ConfigTypes.h
1 /* -------------------------------- Arctic Core ------------------------------\r
2  * Arctic Core - the open source AUTOSAR platform http://arccore.com\r
3  *\r
4  * Copyright (C) 2009  ArcCore AB <contact@arccore.com>\r
5  *\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
9  *\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
13  * for more details.\r
14  * -------------------------------- Arctic Core ------------------------------*/\r
15 \r
16 \r
17 \r
18 #ifndef FEE_CONFIG_TYPES_H_\r
19 #define FEE_CONFIG_TYPES_H_\r
20 \r
21 #include "Std_Types.h"\r
22 //#include "Fee_Types.h"\r
23 \r
24 \r
25 /*\r
26  * Callback function prototypes\r
27  */\r
28 \r
29 typedef void (*Fee_JobEndCallbackFunctionType)(void);   /** @req FEE098 */\r
30 typedef void (*Fee_JobErrorCallbackFunctionType)(void); /** @req FEE099 */\r
31 \r
32 /*\r
33  * Containers and configuration parameters
34  */\r
35 \r
36 typedef struct {\r
37         Fee_JobEndCallbackFunctionType          NvmJobEndCallbackNotificationCallback;\r
38         Fee_JobErrorCallbackFunctionType        NvmJobErrorCallbackNotificationCallback;\r
39         // The rest of the parameters is realized in Fee_Cfg.h\r
40 } Fee_GeneralType;      /** @req FEE039 */\r
41 \r
42 typedef struct {\r
43         uint8   DeviceIndex;                    /** @req FEE106 */      // Needed by NvM and MemIf\r
44         uint16  BlockNumber;                    /** @req FEE107 */\r
45         uint16  BlockSize;                              /** @req FEE108 */\r
46         boolean ImmediateData;                  /** @req FEE109 */\r
47         uint32  NumberOfWriteCycles;    /** @req FEE110 */\r
48 } Fee_BlockConfigType;                          /** @req FEE040 */\r
49 \r
50 typedef struct {\r
51         // Containers\r
52         Fee_GeneralType                                 General;                        // 1\r
53         const Fee_BlockConfigType               *BlockConfig;           // 1..*\r
54 } Fee_ConfigType;\r
55 \r
56 /*\r
57  * Make the Fee_Config visible for others.\r
58  */\r
59 extern const Fee_ConfigType Fee_Config;\r
60 \r
61 \r
62 \r
63 \r
64 #endif /*FEE_CONFIG_TYPES_H_*/\r