#ifndef SyncObject_WinCE_h #define SyncObject_WinCE_h #ifndef SyncObject_h # error include SyncObject.h instead #endif #include namespace act { class SyncObject { private: SyncObject(const SyncObject&); SyncObject& operator=(const SyncObject&); public: SyncObject(); ~SyncObject(); void lock(); void unlock(); long lockCount() const { return m_lock_count; } DWORD threadId() const { return m_thread_id; } private: volatile long m_lock_count; volatile DWORD m_thread_id; CRITICAL_SECTION m_sync; }; } // namespace act #endif // SyncObject_WinCE_h