You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.0 KiB
50 lines
1.0 KiB
/*
|
|
* Thread methods, local storage
|
|
*/
|
|
|
|
#ifndef DUI_CORE_THREAD_H_INCLUDED
|
|
#define DUI_CORE_THREAD_H_INCLUDED
|
|
|
|
#pragma once
|
|
|
|
namespace DirectUI
|
|
{
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// Synchronization lock
|
|
|
|
class Lock
|
|
{
|
|
public:
|
|
Lock() { InitializeCriticalSection(&_cs); }
|
|
~Lock() { DeleteCriticalSection(&_cs); }
|
|
void Enter() { EnterCriticalSection(&_cs); }
|
|
void Leave() { LeaveCriticalSection(&_cs); }
|
|
|
|
private:
|
|
CRITICAL_SECTION _cs;
|
|
};
|
|
|
|
extern Lock* g_plkParser;
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// Initialization
|
|
|
|
HRESULT InitProcess();
|
|
HRESULT UnInitProcess();
|
|
|
|
HRESULT InitThread();
|
|
HRESULT UnInitThread();
|
|
|
|
// Control library class registration
|
|
HRESULT RegisterAllControls();
|
|
|
|
/////////////////////////////////////////////////////////////////////////////
|
|
// Message pump
|
|
|
|
void StartMessagePump();
|
|
void StopMessagePump();
|
|
|
|
} // namespace DirectUI
|
|
|
|
#endif // DUI_CORE_THREAD_H_INCLUDED
|