diff options
author | sletz <sletz@0c269be4-1314-0410-8aa9-9f06e86f4224> | 2008-05-26 17:03:12 +0000 |
---|---|---|
committer | sletz <sletz@0c269be4-1314-0410-8aa9-9f06e86f4224> | 2008-05-26 17:03:12 +0000 |
commit | 1182ac2c7cca3ee476067590181effbe5ec2889a (patch) | |
tree | a02215d038087f2d3e4aeeccb7c94c966037f2d4 | |
parent | 9388e8130e03ae3aa39651b08ca66a4c2a50e130 (diff) | |
download | jack2-1182ac2c7cca3ee476067590181effbe5ec2889a.tar.gz |
Improve JackSyncInterface class
git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2351 0c269be4-1314-0410-8aa9-9f06e86f4224
-rw-r--r-- | common/JackMessageBuffer.cpp | 2 | ||||
-rw-r--r-- | common/JackProcessSync.h | 7 | ||||
-rw-r--r-- | common/JackSyncInterface.h | 1 | ||||
-rw-r--r-- | macosx/Jackdmp.xcodeproj/project.pbxproj | 8 | ||||
-rw-r--r-- | windows/JackWinProcessSync.h | 5 |
5 files changed, 18 insertions, 5 deletions
diff --git a/common/JackMessageBuffer.cpp b/common/JackMessageBuffer.cpp index b4ff5d11..554f7124 100644 --- a/common/JackMessageBuffer.cpp +++ b/common/JackMessageBuffer.cpp @@ -52,7 +52,7 @@ JackMessageBuffer::~JackMessageBuffer() jack_info("no message buffer overruns"); } fThread->SetStatus(JackThread::kIdle); - fSignal->SignalAll(); + fSignal->Signal(); fThread->Stop(); Flush(); delete fThread; diff --git a/common/JackProcessSync.h b/common/JackProcessSync.h index 41391217..1148cfcd 100644 --- a/common/JackProcessSync.h +++ b/common/JackProcessSync.h @@ -70,6 +70,13 @@ class JackProcessSync : public JackSyncInterface bool TimedWait(long usec); void Wait(); + + void Signal() + { + pthread_mutex_lock(&fLock); + pthread_cond_signal(&fCond); + pthread_mutex_unlock(&fLock); + } void SignalAll() { diff --git a/common/JackSyncInterface.h b/common/JackSyncInterface.h index 7a4889c3..c22dfe5d 100644 --- a/common/JackSyncInterface.h +++ b/common/JackSyncInterface.h @@ -41,6 +41,7 @@ class JackSyncInterface virtual bool Connect(const char* name) = 0; virtual bool TimedWait(long usec) = 0; virtual void Wait() = 0; + virtual void Signal() = 0; virtual void SignalAll() = 0; virtual void Destroy() = 0; }; diff --git a/macosx/Jackdmp.xcodeproj/project.pbxproj b/macosx/Jackdmp.xcodeproj/project.pbxproj index ea804d5a..0ee19c1c 100644 --- a/macosx/Jackdmp.xcodeproj/project.pbxproj +++ b/macosx/Jackdmp.xcodeproj/project.pbxproj @@ -762,28 +762,28 @@ isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 4B363EDF0DEB091C001F72D9 /* jack_rec Universal */; + remoteGlobalIDString = 4B363EDF0DEB091C001F72D9; remoteInfo = "jack_rec Universal"; }; 4B363F240DEB0ABE001F72D9 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 4B363F140DEB0A6A001F72D9 /* jack_monitor_client Universal */; + remoteGlobalIDString = 4B363F140DEB0A6A001F72D9; remoteInfo = "jack_monitor_client Universal"; }; 4B363F520DEB0CFE001F72D9 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 4B363F2B0DEB0BD1001F72D9 /* jack_showtime Universal */; + remoteGlobalIDString = 4B363F2B0DEB0BD1001F72D9; remoteInfo = "jack_showtime Universal"; }; 4B363F770DEB0D85001F72D9 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; proxyType = 1; - remoteGlobalIDString = 4B363F680DEB0D4E001F72D9 /* jack_impulse_grabber Universal */; + remoteGlobalIDString = 4B363F680DEB0D4E001F72D9; remoteInfo = "jack_impulse_grabber Universal"; }; 4B5A1BCE0CD1CCC80005BF74 /* PBXContainerItemProxy */ = { diff --git a/windows/JackWinProcessSync.h b/windows/JackWinProcessSync.h index 4570cf1f..217db825 100644 --- a/windows/JackWinProcessSync.h +++ b/windows/JackWinProcessSync.h @@ -66,6 +66,11 @@ class JackWinProcessSync : public JackSyncInterface void Wait(); + void Signal() + { + SetEvent(fEvent); + } + void SignalAll() { SetEvent(fEvent); |