# HG changeset patch # User Mike Pavone # Date 1254181725 14400 # Node ID fab5bb137cf95f14eada79574cacac321b323510 # Parent 3cc5e4a423445e462dc954ba1e7c8f0dec7c94a7 Added Unix Time worker to interpreter diff -r 3cc5e4a42344 -r fab5bb137cf9 interp.c --- a/interp.c Sat Jun 27 01:50:33 2009 -0400 +++ b/interp.c Mon Sep 28 19:48:45 2009 -0400 @@ -2218,7 +2218,8 @@ aworker->input_types[1] = BUILTIN_TYPE_WHOLE; #endif #endif - + aworker = create_worker(prog, "Unix Time", 0, 1, WORKER_TYPE); + aworker->implement_func=(custom_worker *)unix_time; /*if(current_def > num_defs) num_defs = current_def; if(current_company > num_companies) @@ -4001,6 +4002,13 @@ return 0; } +int unix_time(datum ** inputlist, queue_entry * worker_entry) +{ + inputlist[0] = new_datum(BUILTIN_TYPE_WHOLE, 2, 0, worker_entry->instance->def->program); + inputlist[0]->c.integers.num_a = time(NULL); + return 0; +} + int vis_end(datum ** inputlist, queue_entry * worker_entry) { // fprintf(outfile, "End worker reached.\n"); diff -r 3cc5e4a42344 -r fab5bb137cf9 interp.h --- a/interp.h Sat Jun 27 01:50:33 2009 -0400 +++ b/interp.h Mon Sep 28 19:48:45 2009 -0400 @@ -95,6 +95,7 @@ void vis_window_init(); //defined in window.cpp +int unix_time(datum ** inputlist, queue_entry * worker_entry); int vis_random(datum ** inputlist, queue_entry * worker_entry); int vis_print(datum ** inputlist, queue_entry * worker_entry); int vis_build(datum ** inputlist, queue_entry * worker_entry);