Go to the documentation of this file.
36 #ifndef addToRunTimeSelectionTable_H
37 #define addToRunTimeSelectionTable_H
42 #define addToRunTimeSelectionTable\
43 (baseType,thisType,argNames) \
46 baseType::add##argNames##ConstructorToTable<thisType> \
47 add##thisType##argNames##ConstructorTo##baseType##Table_
51 #define addRemovableToRunTimeSelectionTable\
52 (baseType,thisType,argNames) \
55 baseType::addRemovable##argNames##ConstructorToTable<thisType> \
56 addRemovable##thisType##argNames##ConstructorTo##baseType##Table_
60 #define addNamedToRunTimeSelectionTable\
61 (baseType,thisType,argNames,lookupName) \
64 baseType::add##argNames##ConstructorToTable<thisType> \
65 add##thisType##argNames##ConstructorTo## \
66 baseType##Table_##lookupName##_(#lookupName)
70 #define addRemovableNamedToRunTimeSelectionTable\
71 (baseType,thisType,argNames,lookupName) \
74 baseType::addRemovable##argNames##ConstructorToTable<thisType> \
75 addRemovable##thisType##argNames##ConstructorTo## \
76 baseType##Table_##lookupName##_(#lookupName)
80 #define addAliasToRunTimeSelectionTable\
81 (baseType,thisType,argNames,lookup,other,ver) \
84 baseType::addAlias##argNames##ConstructorToTable<thisType> \
85 add##thisType##argNames##ConstructorTo##baseType##Table_ \
86 ##lookup##_##other##_(#lookup,#other,ver)
93 #define addTemplateToRunTimeSelectionTable\
94 (baseType,thisType,Targ,argNames) \
97 baseType::add##argNames##ConstructorToTable<thisType<Targ>> \
98 add##thisType##Targ##argNames##ConstructorTo##baseType##Table_
103 #define addNamedTemplateToRunTimeSelectionTable\
104 (baseType,thisType,Targ,argNames,lookupName) \
107 baseType::add##argNames##ConstructorToTable<thisType<Targ>> \
108 add##thisType##Targ##argNames##ConstructorTo## \
109 baseType##Table_##lookupName##_(#lookupName)
113 #define addAliasTemplateToRunTimeSelectionTable\
114 (baseType,thisType,Targ,argNames,lookup,other,ver) \
117 baseType::addAlias##argNames##ConstructorToTable<thisType<Targ>> \
118 add##thisType##Targs##argNames##ConstructorTo##baseType##Table_ \
119 ##lookup##_##other##_(#lookup,#other,ver)
126 #define addTemplatedToRunTimeSelectionTable\
127 (baseType,thisType,Targ,argNames) \
130 baseType<Targ>::add##argNames##ConstructorToTable<thisType<Targ>> \
131 add##thisType##Targ##argNames##ConstructorTo##baseType##Targ##Table_
136 #define addNamedTemplatedToRunTimeSelectionTable\
137 (baseType,thisType,Targ,argNames,lookupName) \
140 baseType<Targ>::add##argNames##ConstructorToTable<thisType<Targ>> \
141 add##thisType##Targ##argNames##ConstructorTo## \
142 baseType##Targ##Table_##lookupName##_(#lookupName)
147 #define addAliasTemplatedToRunTimeSelectionTable\
148 (baseType,thisType,Targ,argNames,lookup,other,ver) \
151 baseType<Targ>::add##argNames##ConstructorToTable<thisType<Targ>> \
152 add##thisType##Targ##argNames##ConstructorTo##baseType##Targ## \
153 Table_##lookup##_##other##_(#lookup,#other,ver)
#define addNamedTemplatedToRunTimeSelectionTable(baseType, thisType, Targ, argNames, lookupName)
Add to construction table with 'lookupName' as the key.
void add(FieldField< Field1, typename typeOfSum< Type1, Type2 >::type > &f, const FieldField< Field1, Type1 > &f1, const FieldField< Field2, Type2 > &f2)
#define addTemplateToRunTimeSelectionTable(baseType, thisType, Targ, argNames)
Add to construction table with typeName as the key.
#define addNamedTemplateToRunTimeSelectionTable(baseType, thisType, Targ, argNames, lookupName)
Add to construction table with 'lookupName' as the key.
#define addTemplatedToRunTimeSelectionTable(baseType, thisType, Targ, argNames)
Add to construction table with typeName as the key.