12 #ifndef ECL_THREADS_PRIORITY_WIN_HPP_ 
   13 #define ECL_THREADS_PRIORITY_WIN_HPP_ 
   19 #include <ecl/config/ecl.hpp> 
   20 #if defined(ECL_IS_WIN32) 
   30 #include <ecl/config/ecl.hpp> 
  102 bool ECL_LOCAL set_real_time_priority(
int policy,
int priority_level);
 
  111 #if defined(ECL_HAS_EXCEPTIONS) 
  130 inline StandardException 
ECL_LOCAL throwPriorityException(
const char* loc ) {
 
  131         int error_result = errno;
 
  132     switch (error_result) {
 
  133         case ( EINVAL ) : 
return StandardException(loc, 
ecl::InvalidInputError, 
"The specified param structure or priority group was invalid.");
 
  134         case ( ESRCH  ) : 
return StandardException(loc, 
ecl::InvalidInputError, 
"The process specified could not be found.");
 
  135         case ( EPERM  ) : 
return StandardException(loc, 
ecl::PermissionsError, 
"The caller does not have the appropriate privileges for realtime scheduling (http://snorriheim.dnsdojo.com/doku/doku.php/en:linux:admin:priorities).");
 
  136         case ( EACCES ) : 
return StandardException(loc, 
ecl::PermissionsError, 
"The caller does not have the appropriate privileges for elevating the process priority by reducing the niceness value (http://snorriheim.dnsdojo.com/doku/doku.php/en:linux:admin:priorities).");
 
  139                         std::ostringstream ostream;
 
  140                         ostream << 
"Unknown posix error " << error_result << 
": " << strerror(error_result) << 
".";
 
  141                         return StandardException(loc, 
UnknownError, ostream.str());