1 /* Copyright (C) 2010 Wildfire Games. 2 * This file is part of 0 A.D. 3 * 4 * 0 A.D. is free software: you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation, either version 2 of the License, or 7 * (at your option) any later version. 8 * 9 * 0 A.D. is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with 0 A.D. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 #ifndef INCLUDED_COMPONENTS 19 #define INCLUDED_COMPONENTS 20 21 // Defaults for TypeList.h macros 22 #define MESSAGE(name) 23 #define INTERFACE(name) 24 #define COMPONENT(name) 25 26 #undef MESSAGE 27 #define MESSAGE(name) MT_##name, 28 enum EMessageTypeId 29 { 30 MT__Invalid = 0, 31 #include "simulation2/TypeList.h" 32 MT__LastNative 33 }; 34 #undef MESSAGE 35 #define MESSAGE(name) 36 37 #undef INTERFACE 38 #define INTERFACE(name) IID_##name, 39 enum EInterfaceId 40 { 41 IID__Invalid = 0, 42 #include "simulation2/TypeList.h" 43 IID__LastNative 44 }; 45 #undef INTERFACE 46 #define INTERFACE(name) 47 48 #undef COMPONENT 49 #define COMPONENT(name) CID_##name, 50 enum EComponentTypeId 51 { 52 CID__Invalid = 0, 53 #include "simulation2/TypeList.h" 54 CID__LastNative 55 }; 56 #undef COMPONENT 57 #define COMPONENT(name) 58 59 #undef MESSAGE 60 #undef INTERFACE 61 #undef COMPONENT 62 63 #endif // INCLUDED_COMPONENTS 64