void test_led_on_off(monome_t *monome) { unsigned int i, j, s = 2; while( s-- ) for( i = 0; i < 16; i++ ) for( j = 0; j < 16; j++ ) { monome_led_set(monome, j, i, s); chill(128); } }
static int osc_led_handler(const char *path, const char *types, lo_arg **argv, int argc, lo_message data, void *user_data) { monome_t *monome = user_data; if( (argc != 3 || strcmp("iii", types)) || (argv[0]->i > 15 || argv[0]->i < 0) || (argv[1]->i > 15 || argv[1]->i < 0) || (argv[2]->i > 1 || argv[2]->i < 0) ) return -1; return monome_led_set(monome, argv[0]->i, argv[1]->i, argv[2]->i); }
int main(int argc, char **argv) { monome_t *monome; unsigned int w, h, y, s; uint16_t buf; if( !(monome = monome_open(MONOME_OSC, "8000")) ) { fprintf(stderr, "couldn't open monome\n"); exit(EXIT_FAILURE); } w = WIDTH; h = HEIGHT; for(s = 0;; s = !s) for( y = 0; y < h; y++ ) { buf = ((1 << y)) - s; monome_led_row(monome, y, w / 8, y, (uint8_t *) &buf); monome_led_set(monome, w - 1, y, random() & 1); random_chill(); } }
int monome_led_off(monome_t *monome, uint_t x, uint_t y) { REQUIRE(led); return monome_led_set(monome, x, y, 0); }