46 # include <visp/vpKeyboard.h>
90 struct timeval tv = { 0, 0 };
94 FD_SET(STDIN_FILENO, &readfds);
96 return select(STDIN_FILENO + 1, &readfds, NULL, NULL, &tv) == 1;
127 vpKeyboard::setRawMode(
bool active)
131 tcgetattr(STDIN_FILENO, &initial_settings);
133 new_settings = initial_settings;
135 new_settings = initial_settings;
136 new_settings.c_lflag &= (
unsigned int)~ICANON;
137 new_settings.c_lflag &= (
unsigned int)~ECHO;
138 new_settings.c_lflag &= (
unsigned int)~ISIG;
139 new_settings.c_oflag &= (
unsigned int)~NL0;
140 new_settings.c_oflag &= (
unsigned int)~CR0;
141 new_settings.c_oflag &= (
unsigned int)~TAB0;
142 new_settings.c_oflag &= (
unsigned int)~BS0;
143 new_settings.c_cc[VMIN] = 1;
144 new_settings.c_cc[VTIME] = 0;
145 tcsetattr(STDIN_FILENO, TCSANOW, &new_settings);
149 tcsetattr(STDIN_FILENO, TCSANOW, &initial_settings);
153 #endif // defined UNIX