]> git.sesse.net Git - stockfish/commitdiff
Retire now unused input_available()
authorMarco Costalba <mcostalba@gmail.com>
Sat, 5 Nov 2011 07:37:48 +0000 (08:37 +0100)
committerMarco Costalba <mcostalba@gmail.com>
Sat, 5 Nov 2011 07:43:44 +0000 (08:43 +0100)
With our new listener thread we don't need anymore
this ugly and platform dependent code.

No functional change.

Signed-off-by: Marco Costalba <mcostalba@gmail.com>
src/misc.cpp
src/misc.h

index 0920f7f08838b132f7413ee41c2a4229e0c80966..610cc2402778768a54d4125268c0cd9aa5883ac4 100644 (file)
@@ -175,79 +175,6 @@ int cpu_count() {
 }
 
 
-/// Check for console input. Original code from Beowulf, Olithink and Greko
-
-#ifndef _WIN32
-
-int input_available() {
-
-  fd_set readfds;
-  struct timeval  timeout;
-
-  FD_ZERO(&readfds);
-  FD_SET(fileno(stdin), &readfds);
-  timeout.tv_sec = 0; // Set to timeout immediately
-  timeout.tv_usec = 0;
-  select(16, &readfds, 0, 0, &timeout);
-
-  return (FD_ISSET(fileno(stdin), &readfds));
-}
-
-#else
-
-int input_available() {
-
-  static HANDLE inh = NULL;
-  static bool usePipe = false;
-  INPUT_RECORD rec[256];
-  DWORD nchars, recCnt;
-
-  if (!inh)
-  {
-      inh = GetStdHandle(STD_INPUT_HANDLE);
-      if (GetConsoleMode(inh, &nchars))
-      {
-          SetConsoleMode(inh, nchars & ~(ENABLE_MOUSE_INPUT | ENABLE_WINDOW_INPUT));
-          FlushConsoleInputBuffer(inh);
-      } else
-          usePipe = true;
-  }
-
-  // When using Standard C input functions, also check if there
-  // is anything in the buffer. After a call to such functions,
-  // the input waiting in the pipe will be copied to the buffer,
-  // and the call to PeekNamedPipe can indicate no input available.
-  // Setting stdin to unbuffered was not enough. [from Greko]
-  if (stdin->_cnt > 0)
-      return 1;
-
-  // When running under a GUI the input commands are sent to us
-  // directly over the internal pipe. If PeekNamedPipe() returns 0
-  // then something went wrong. Probably the parent program exited.
-  // Returning 1 will make the next call to the input function
-  // return EOF, where this should be catched then.
-  if (usePipe)
-      return PeekNamedPipe(inh, NULL, 0, NULL, &nchars, NULL) ? nchars : 1;
-
-  // Count the number of unread input records, including keyboard,
-  // mouse, and window-resizing input records.
-  GetNumberOfConsoleInputEvents(inh, &nchars);
-
-  // Read data from console without removing it from the buffer
-  if (nchars <= 0 || !PeekConsoleInput(inh, rec, std::min(int(nchars), 256), &recCnt))
-      return 0;
-
-  // Search for at least one keyboard event
-  for (DWORD i = 0; i < recCnt; i++)
-      if (rec[i].EventType == KEY_EVENT)
-          return 1;
-
-  return 0;
-}
-
-#endif
-
-
 /// prefetch() preloads the given address in L1/L2 cache. This is a non
 /// blocking function and do not stalls the CPU waiting for data to be
 /// loaded from memory, that can be quite slow.
index 5a337e5200fabf532ee31ab649659e93dace2647..0c89922bfeb9112fc8da7626c1b160c31653dd32 100644 (file)
@@ -28,7 +28,6 @@ extern const std::string engine_name();
 extern const std::string engine_authors();
 extern int get_system_time();
 extern int cpu_count();
-extern int input_available();
 extern void prefetch(char* addr);
 
 extern void dbg_hit_on(bool b);