16 #define WAIT_FOR_MUTEX_TIME_OUT (5000) 22 bool check(
const char * call, HRESULT hr,
bool to_throw =
true);
23 #define CHECK_HR(x) check(#x, x); 24 #define LOG_HR(x) check(#x, x, false); 50 cm_node( DEVINST devinst ) : _devinst( devinst ) {}
61 bool valid()
const {
return get() != 0; }
66 operator DEVINST
const* ()
const {
return &
_devinst; }
96 if( ! fn( node,
depth ))
98 if( node.foreach_node( fn,
depth + 1 ))
100 node = node.get_sibling();
111 virtual bool wait(DWORD
timeout)
const;
113 static event_base* wait(
const std::vector<event_base*>& events,
bool waitAll,
int timeout);
114 static event_base* wait_any(
const std::vector<event_base*>& events,
int timeout);
115 static event_base* wait_all(
const std::vector<event_base*>& events,
int timeout);
158 bool try_lock()
const;
159 void lock()
const { acquire(); }
165 void update_id(
const char*
id);
166 void acquire()
const;
167 void release()
const;
179 static std::string last_error_string(DWORD lastError);
GLenum GLuint GLenum GLsizei const GLchar * message
GLuint64 GLenum void * handle
GLsizei const GLchar *const * path
GLint GLint GLsizei GLsizei GLsizei depth
GLsizei const GLchar *const * string
GLbitfield GLuint64 timeout