void task_body (void *cookie) { struct timespec ts; unsigned int delay = 1000*1000; // Note: Delay in ns FILE *pin0 = init_gpio(18); FILE *pin1 = init_gpio(23); FILE *pin2 = init_gpio(24); FILE *pin3 = init_gpio(25); signal(SIGINT, dumptimestamps); clock_gettime(CLOCK_MONOTONIC, &ts); // Lock memory to ensure no swapping is done. if(mlockall(MCL_FUTURE|MCL_CURRENT)) { fprintf(stderr,"WARNING: Failed to lock memory\n"); } // Set our thread to real time priority // struct sched_param sp; // sp.sched_priority = 30; // if(pthread_setschedparam(pthread_self(), SCHED_FIFO, &sp)){ // fprintf(stderr,"WARNING: Failed to set stepper thread" // "to real-time priority\n"); // } while(1) { sleep_until(&ts,delay); logtimestamp(); setiopin(pin0,1); sleep_until(&ts,delay); logtimestamp(); setiopin(pin3,0); sleep_until(&ts,delay); logtimestamp(); setiopin(pin1,1); sleep_until(&ts,delay); logtimestamp(); setiopin(pin0,0); sleep_until(&ts,delay); logtimestamp(); setiopin(pin2,1); sleep_until(&ts,delay); logtimestamp(); setiopin(pin1,0); sleep_until(&ts,delay); logtimestamp(); setiopin(pin3,1); sleep_until(&ts,delay); logtimestamp(); setiopin(pin2,0); } }
std::ofstream & myLib::getofs() { static std::ofstream ofs; // Do you want to make noise, or not? // TODO: debug level instead of boolean. bool quiet = false; if (quiet) { ofs.close(); } else { if (!ofs.is_open()) { //ofs = new std::ofstream(); ofs.open("C:/EES32/Userlib/nf_EES_lib1/eessucks.log", std::ofstream::out | std::ofstream::app); logtimestamp(ofs); ofs << "Opening the file ..." << std::endl; } } return ofs; }