int main(int argc, char *argv[]) { enum { TIME_STAMP_PRINT_TIMES = 5, }; urg_t urg; long time_stamp_offset; int i; if (open_urg_sensor(&urg, argc, argv) < 0) { return 1; } printf("# pc,\tsensor\n"); // \~japanese URG のタイムスタンプと PC のタイムスタンプを表示 time_stamp_offset = print_time_stamp(&urg, 0); // \~japanese URG の補正後のタイムスタンプと PC タイムスタンプを表示 for (i = 0; i < TIME_STAMP_PRINT_TIMES; ++i) { print_time_stamp(&urg, time_stamp_offset); } urg_close(&urg); #if defined(URG_MSC) getchar(); #endif return 0; }
int log_printf(unsigned level, const char *fmt, ...) { if (log_level || level <= debug_level) { char buf[4096]; va_list args; int ret = 0; ret = print_time_stamp(buf, sizeof(buf)); va_start(args, fmt); ret += vsnprintf(buf + ret, sizeof(buf) - ret, fmt, args); va_end(args); if (log_level) log_data(LOG_MESSAGES, buf, ret); if (level <= debug_level) ret = fprintf(stderr, "%s", buf); return ret; } return 0; }