#include #include "legoctl.h" int lct_init_brick(lct_brick_t *brick,lct_brick_type_t type) { brick->brick_type = type; nxt_init(&brick->nxt); rcx_init(&brick->rcx); return 0; } int lct_open_brick(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_open(&(brick->nxt)); break; case LCT_RCX: return rcx_open(&(brick->rcx)); break; default: //Internal error break; } return LCT_OK; } int lct_upload_firmware(lct_brick_t * brick, char *filename) { switch (brick->brick_type) { case LCT_NXT: //nxt_upload_firmware(&brick->nxt, filename); break; default: break; } return LCT_OK; } int lct_download_firmware(lct_brick_t * brick, char *filename) { return LCT_OK; } int lct_upload_program(lct_brick_t * brick, char *filename) { switch (brick->brick_type) { case LCT_NXT: nxt_upload_program(&brick->nxt, filename); break; default: break; } return LCT_OK; } int lct_delete_file(lct_brick_t * brick, char *filename) { switch (brick->brick_type) { case LCT_NXT: nxt_delete_file(&brick->nxt, filename); break; default: break; } return LCT_OK; } int lct_start_program(lct_brick_t * brick, char *filename) { switch (brick->brick_type) { case LCT_NXT: nxt_start_program(&brick->nxt, filename); break; default: break; } return LCT_OK; } int lct_stop_program(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: nxt_stop_program(&brick->nxt); break; default: break; } return LCT_OK; } int lct_download_program(lct_brick_t * brick, char *filename) { return LCT_OK; } int lct_close_brick(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_close(&brick->nxt); break; default: //Internal error break; } return LCT_OK; } int lct_get_battery_level(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_get_battery_level(&brick->nxt); break; default: //Internal error break; } return LCT_OK; } int lct_print_battery_level(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_print_battery_level(&brick->nxt); break; default: //Internal error break; } return LCT_OK; } int lct_get_firmware_version(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_get_firmware_version(&brick->nxt); break; default: //Internal error break; } return LCT_OK; } int lct_print_firmware_version(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_print_firmware_version(&brick->nxt); break; default: //Internal error break; } return LCT_OK; } int lct_print_device_info(lct_brick_t * brick) { switch (brick->brick_type) { case LCT_NXT: return nxt_print_device_info(&brick->nxt); break; default: /* Internal error */ break; } return LCT_OK; }