00001 /* 00002 * synergy -- mouse and keyboard sharing utility 00003 * Copyright (C) 2002 Chris Schoeneman 00004 * 00005 * This package is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * found in the file COPYING that should have accompanied this file. 00008 * 00009 * This package is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 */ 00014 00015 #include "CLock.h" 00016 #include "CCondVar.h" 00017 #include "CMutex.h" 00018 00019 // 00020 // CLock 00021 // 00022 00023 CLock::CLock(const CMutex* mutex) : 00024 m_mutex(mutex) 00025 { 00026 m_mutex->lock(); 00027 } 00028 00029 CLock::CLock(const CCondVarBase* cv) : 00030 m_mutex(cv->getMutex()) 00031 { 00032 m_mutex->lock(); 00033 } 00034 00035 CLock::~CLock() 00036 { 00037 m_mutex->unlock(); 00038 }