void print_scope(D_Scope *st) { printf("SCOPE %p: ", st); printf(" owned: %d, kind: %d, ", st->owned_by_user, st->kind); if (st->ll) printf(" LL\n"); if (st->hash) printf(" HASH\n"); if (st->hash) { int i; for (i = 0; i < st->hash->syms.n; i++) if (st->hash->syms.v[i]) print_sym(st->hash->syms.v[i]); } else { D_Sym *ll = st->ll; while (ll) { print_sym(ll); ll = ll->next; } } printf("\n\n"); if (st->dynamic) print_scope(st->dynamic); if (st->search) print_scope(st->search); }
static void add_scope(struct scope *scope) { /* start the TTL timer for this scope */ reset_scope_timer(scope); /* add the scope to the scopes list */ list_add(scopes, scope); print_scope(scope); /* inform the routing processes */ routing->add(scope); /* inform the owner */ CALLBACK(scope->owner, add(scope)); }
void init_board(void) { int i, j; startx = 50, starty = 50, endx=xres() - 50, endy = yres() - 50, scope = 0; maxn = (xres() - 500) / D, maxm = (yres() - 150) / D; if (maxn >= MAXWIDTH) maxn = MAXWIDTH - 1; if (maxm >= MAXHEIGHT) maxm = MAXHEIGHT - 1; //init board to zero for (i = 0; i<= maxn; i++) for (j = 0; j<= maxm; j++) board[j][i] = 0; printf("\033[?25l"); //隐藏光标 system("clear"); background_pic("background.bmp"); draw_board(); printlet((maxn + 2) * D + 50, 2 * D + 100, "NEXT"); print_scope(0); }
inline void print_scope(scope* s) { if (s == nullptr) return; print_scope(s->_prev); printf("::%s",s->_name); }
void Scope::printscope() { print_scope(_decl_context); }
void list_cvars() { int num,err,i,numvars; char *name, *desc; int bind,verbos,scope; MPI_Datatype dt; MPI_T_enum et; int maxnamelen=strlen("Variable"); int maxdesclen=0; int prtlen; int namelen,desclen; int v_int; unsigned int v_uint; unsigned long v_ulong; unsigned long long v_ullong; MPI_Count v_count; char v_char[4097]; double v_double; char value[257]; int value_sup; MPI_T_cvar_handle handle=MPI_T_CVAR_HANDLE_NULL; int count; /* Get number of variables */ err=MPI_T_cvar_get_num(&num); CHECKERR("CVARNUM",err); printf("Found %i control variables\n",num); /* Find string sizes */ numvars=0; for (i=0; i<num; i++) { int namelen=0; int desclen=0; char fname[5]; char fdesc[5]; err=MPI_T_cvar_get_info(i,fname,&namelen,&verbos,&dt,&et,fdesc,&desclen,&bind,&scope); if (namelen>maxnamelen) maxnamelen=namelen; if (desclen>maxdesclen) maxdesclen=desclen; if (verbos<=verbosity) numvars++; } printf("Found %i control variables with verbosity <= ",numvars); print_verbosity_short(verbosity); printf("\n\n"); /* Allocate string buffers */ name=(char*)malloc(sizeof(char)*maxnamelen); CHECKERR("Malloc Name",name==NULL); desc=(char*)malloc(sizeof(char)*maxdesclen); CHECKERR("Malloc Desc",desc==NULL); /* Print header */ prtlen=0; if (!longlist) { print_filled("Variable",maxnamelen,' '); printf(" "); prtlen=maxnamelen+1; printf("VRB "); printf(" "); prtlen+=5+1; printf("Type "); printf(" "); prtlen+=6+1; printf("Bind "); printf(" "); prtlen+=8+1; printf("Scope "); printf(" "); prtlen+=8+1; printf("Value"); printf("\n"); prtlen+=12; print_filled("",prtlen,'-');printf("\n"); } /* Loop and print */ for (i=0; i<num; i++) { namelen=maxnamelen; desclen=maxdesclen; err=MPI_T_cvar_get_info(i,name,&namelen,&verbos,&dt,&et,desc,&desclen,&bind,&scope); if (MPI_T_ERR_INVALID_INDEX == err) continue; CHECKERR("CVARINFO",err); value_sup=1; if (bind==MPI_T_BIND_NO_OBJECT) { err=MPI_T_cvar_handle_alloc(i,NULL,&handle,&count); CHECKERR("CVAR-ALLOC",err); } else if (bind==MPI_T_BIND_MPI_COMM) { MPI_Comm comm=MPI_COMM_WORLD; err=MPI_T_cvar_handle_alloc(i,&comm,&handle,&count); CHECKERR("CVAR-ALLOC",err); } else { value_sup=0; sprintf(value,"unsupported"); } if (value_sup) { if (count==1 || dt==MPI_CHAR) { if (dt==MPI_INT) { err=MPI_T_cvar_read(handle,&v_int); CHECKERR("CVARREAD",err); if (et==MPI_T_ENUM_NULL) { sprintf(value,"%i",v_int); } else { int i,etnum; char etname[20]; int etlen=20; int done=0; int newval; err=MPI_T_enum_get_info(et,&etnum,etname,&etlen); for (i=0; i<etnum; i++) { etlen=12; err=MPI_T_enum_get_item(et,i,&newval,etname,&etlen); if (newval==v_int) { sprintf(value, "%s",etname); done=1; } } if (!done) { sprintf(value, "unknown"); } } } else if (dt==MPI_UNSIGNED) { err=MPI_T_cvar_read(handle,&v_uint); CHECKERR("CVARREAD",err); sprintf(value,"%u",v_uint); } else if (dt==MPI_UNSIGNED_LONG) { err=MPI_T_cvar_read(handle,&v_ulong); CHECKERR("CVARREAD",err); sprintf(value,"%lu",v_ulong); } else if (dt==MPI_UNSIGNED_LONG_LONG) { err=MPI_T_cvar_read(handle,&v_ullong); CHECKERR("CVARREAD",err); sprintf(value,"%llu",v_ullong); } else if (dt==MPI_COUNT) { err=MPI_T_cvar_read(handle,&v_count); CHECKERR("CVARREAD",err); sprintf(value,"%lu",v_count); } else if (dt==MPI_CHAR) { err=MPI_T_cvar_read(handle,v_char); CHECKERR("CVARREAD",err); sprintf(value,"%s",v_char); } else if (dt==MPI_DOUBLE) { err=MPI_T_cvar_read(handle,&v_double); CHECKERR("CVARREAD",err); sprintf(value,"%d",v_double); } else { value_sup=0; sprintf(value,"unsupported"); } } else { value_sup=0; sprintf(value,"unsupported"); } } if (handle!=MPI_T_CVAR_HANDLE_NULL) { MPI_T_cvar_handle_free(&handle); CHECKERR("CVAR-FREE",err); } if (verbos<=verbosity) { if (!longlist) { print_filled(name,maxnamelen,' '); printf(" "); print_verbosity_short(verbos); printf(" "); print_type(dt); printf(" "); print_bind(bind); printf(" "); print_scope(scope); printf(" "); printf("%s",value); printf("\n"); } else { print_filled("",SCREENLEN,'-');printf("\n"); printf("Name: %s (",name); print_verbosity(verbos);printf(")\n"); printf("Type: "); print_type(dt); printf("\n"); printf("Bind: "); print_bind(bind); printf("\n"); printf("Scope: ");print_scope(scope);printf("\n"); printf("Value: %s\n\n",value); if (desc!=NULL) printf("%s\n\n",desc); } } } if (numvars>0) { if (!longlist) { print_filled("",prtlen,'-');printf("\n"); } else { print_filled("",SCREENLEN,'-');printf("\n"); } } /* free buffers */ free(name); free(desc); }