Changeset 282
- Timestamp:
- Mar 31, 2007, 12:23:12 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/idl-compiler/h-emitter_c/h_file_emitter.c
r280 r282 160 160 161 161 fprintf(fh, " NOMLINK nomTP_%s_%s(%s* nomSelf,\n", pif->chrName, pm->chrName, pif->chrName); 162 163 162 /* Do parameters */ 164 163 emitMethodParams(pLocalPI, pif, pm->pParamArray); 165 166 164 fprintf(fh, " CORBA_Environment *ev);\n"); 167 165 fprintf(fh, "typedef nomTP_%s_%s *nomTD_%s_%s;\n", pif->chrName, pm->chrName, … … 176 174 fprintf(fh, "#ifdef %s_%s_ParmCheck_h /* Extended parameter check enabled */\n", 177 175 pif->chrName, pm->chrName); 176 /* Forward declaration of parameter test function */ 178 177 fprintf(fh, "NOMEXTERN gboolean NOMLINK parmCheckFunc_%s_%s(%s *nomSelf,\n", 179 178 pif->chrName, pm->chrName, pif->chrName); … … 181 180 emitMethodParams(pLocalPI, pif, pm->pParamArray); 182 181 fprintf(fh, " CORBA_Environment *ev);\n"); 183 182 /* Macro to be used when several parameters are checked */ 184 183 fprintf(fh, "#define %s_%s(nomSelf,", pif->chrName, pm->chrName); 185 184 /* Do parameters */ 186 185 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 187 186 fprintf(fh, " ev) \\\n"); 188 fprintf(fh, " (parmCheckFunc_%s_%s(nomSelf,", pif->chrName, pm->chrName); 189 /* Do parameters */ 190 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 191 fprintf(fh, " ev) ? \\\n"); 192 fprintf(fh, " (NOM_Resolve(nomSelf, %s, %s) \\\n", pif->chrName, pm->chrName); 193 fprintf(fh, " (nomSelf,"); 194 /* Do parameters */ 195 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 196 fprintf(fh, " ev)) : %s_%s_retval)\n", pif->chrName, pm->chrName); 197 fprintf(fh, "#else /* Extended parameter check */\n"); 187 188 if(strcmp(pm->chrName, "nomIsObject")) 189 { 190 fprintf(fh, " (parmCheckFunc_%s_%s(nomSelf,", pif->chrName, pm->chrName); 191 /* Do parameters */ 192 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 193 fprintf(fh, " ev) ? \\\n"); 194 fprintf(fh, " (NOM_Resolve(nomSelf, %s, %s) \\\n", pif->chrName, pm->chrName); 195 fprintf(fh, " (nomSelf,"); 196 /* Do parameters */ 197 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 198 fprintf(fh, " ev)) : %s_%s_retval)\n", pif->chrName, pm->chrName); 199 } 200 else 201 { 202 /* No check for nomIsObject or otherwise we have a recursion */ 203 fprintf(fh, " (NOM_Resolve(nomSelf, %s, %s) \\\n", pif->chrName, pm->chrName); 204 fprintf(fh, " (nomSelf,"); 205 /* Do parameters */ 206 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 207 fprintf(fh, " ev))\n"); 208 } 209 fprintf(fh, "#else /* Extended parameter check */\n"); /* else NOM_NO_PARAM_CHECK */ 210 /* Check object only */ 198 211 fprintf(fh, "#define %s_%s(nomSelf,", pif->chrName, pm->chrName); 199 212 /* Do parameters */ 200 213 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 201 214 fprintf(fh, " ev) \\\n"); 202 if(strcmp(pif->chrName , "NOMObject")) 203 fprintf(fh, " (nomCheckObjectPtr((NOMObject*)nomSelf, %sClassData.classObject,",pif->chrName); 215 if(strcmp(pm->chrName, "nomIsObject")) 216 { 217 if(strcmp(pif->chrName , "NOMObject")) 218 fprintf(fh, " (nomCheckObjectPtr((NOMObject*)nomSelf, %sClassData.classObject,",pif->chrName); 219 else 220 fprintf(fh, " (nomCheckNOMObjectPtr(nomSelf, %sClassData.classObject,",pif->chrName); 221 fprintf(fh, "\"%s_%s\", ev) ? \\\n", pif->chrName, pm->chrName); 222 fprintf(fh, " (NOM_Resolve(nomSelf, %s, %s) \\\n", pif->chrName, pm->chrName); 223 fprintf(fh, " (nomSelf,"); 224 /* Do parameters */ 225 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 226 fprintf(fh, " ev)) : (%s", pm->mpReturn.chrType); 227 for(b=0;b<pm->mpReturn.uiStar;b++) 228 fprintf(fh, "*"); 229 fprintf(fh, ") NULL)\n"); 230 } 204 231 else 205 fprintf(fh, " (nomCheckNOMObjectPtr(nomSelf, %sClassData.classObject,",pif->chrName); 206 fprintf(fh, "\"%s_%s\", ev) ? \\\n", pif->chrName, pm->chrName); 207 208 fprintf(fh, " (NOM_Resolve(nomSelf, %s, %s) \\\n", pif->chrName, pm->chrName); 209 fprintf(fh, " (nomSelf,"); 210 /* Do parameters */ 211 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 212 fprintf(fh, " ev)) : (%s", pm->mpReturn.chrType); 213 for(b=0;b<pm->mpReturn.uiStar;b++) 214 fprintf(fh, "*"); 215 fprintf(fh, ") NULL)\n"); 232 { 233 /* No check for nomIsObject or otherwise we have a recursion */ 234 fprintf(fh, " (NOM_Resolve(nomSelf, %s, %s) \\\n", pif->chrName, pm->chrName); 235 fprintf(fh, " (nomSelf,"); 236 /* Do parameters */ 237 emitMethodParamsNoTypes(pLocalPI, pif, pm->pParamArray); 238 fprintf(fh, " ev))\n"); 239 } 216 240 fprintf(fh, "#endif\n"); 217 241 fprintf(fh, "#else /* NOM_NO_PARAM_CHECK */\n"); … … 239 263 pif->chrName); 240 264 241 fprintf(fh, "#define _%s (%s*)%sClassData.classObject\n\n", 242 pif->chrName, pif->chrMetaClass, pif->chrName); 243 265 #if 0 266 if(pif->chrMetaClass) 267 fprintf(fh, "#define _%s (%s*)%sClassData.classObject\n\n", 268 pif->chrName, pif->chrMetaClass, pif->chrName); 269 else 270 #endif 271 fprintf(fh, "#define _%s %sClassData.classObject\n\n", 272 pif->chrName, pif->chrName); 273 244 274 fprintf(fh, "/*\n * New macro for WPObject\n */\n\n"); 245 275 fprintf(fh, "#define %sNew() \\\n", pif->chrName); 246 276 fprintf(fh, " ((%s*)_nomNew((_%s ? _%s : ", pif->chrName, pif->chrName, pif->chrName); 247 fprintf(fh, " (%s*)%sNewClass(%s_MajorVersion, %s_MinorVersion)), (void*) 0))\n\n",248 pif->chrName, pif->chrName, pif->chrName , pif->chrName);277 fprintf(fh, "%sNewClass(%s_MajorVersion, %s_MinorVersion)), (void*) 0))\n\n", 278 pif->chrName, pif->chrName, pif->chrName); 249 279 250 280 }
Note:
See TracChangeset
for help on using the changeset viewer.