int main(int argc, char *argv[]) { srand(time(NULL)); SDL_Surface* screen = SDL_SetVideoMode(LED_WIDTH * ZOOM, LED_HEIGHT * ZOOM, 32, SDL_SWSURFACE | SDL_DOUBLEBUF); int running = 1; while(running) { SDL_Event ev; while(SDL_PollEvent(&ev)) { switch(ev.key.keysym.sym) { case SDLK_ESCAPE: running = 0; break; case 'd': case SDLK_RIGHT: key_emit(KEY_A, ev.type); break; case 'a': case SDLK_LEFT: key_emit(KEY_B, ev.type); break; default: break; } } running &= !tick_fp(); const unsigned int color[] = { // 0x000000, 0x7f0000, 0xcf0000, 0xff3f3f, 0x000000, 0x240000, 0x480000,0x6c0000,0x900000,0xb40000,0xd90000, 0xff3f3f, }; int x, y; for(x = 0; x < LED_WIDTH; x++) { for(y = 0; y < LED_HEIGHT; y++) { SDL_Rect rect = { x * ZOOM, (LED_HEIGHT - y - 1) * ZOOM, ZOOM, ZOOM }; SDL_FillRect(screen, &rect, color[leds[y][x]]); } } SDL_Flip(screen); usleep(interval); } SDL_Quit(); return 0; }
/** map_aggr() * Go through the allocated portion of the file and apply the operator */ void mapper_aggr(map_args_t *args) { int length, k, i=0; //char *data; assert(args); keyval_t * keyvalue = (keyval_t *)args->data; assert(keyvalue); record_t * record = (record_t *)keyvalue->val; assert(record); // printf("map_args_t length: %d \n",(int)args->length); while(i < (args->length)){ //printf("record_t length %d, record number: %d \n", record->length, record->recnum); length = record->length; //data = (char *)record; key_emit(record); i++;//=sizeof(keyval_t); record = (record_t *)(keyvalue[i].val); // assert(record); } }