Browse Source

Improve JackSyncInterface class

git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@2351 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/1.90
sletz 17 years ago
parent
commit
1182ac2c7c
5 changed files with 18 additions and 5 deletions
  1. +1
    -1
      common/JackMessageBuffer.cpp
  2. +7
    -0
      common/JackProcessSync.h
  3. +1
    -0
      common/JackSyncInterface.h
  4. +4
    -4
      macosx/Jackdmp.xcodeproj/project.pbxproj
  5. +5
    -0
      windows/JackWinProcessSync.h

+ 1
- 1
common/JackMessageBuffer.cpp View File

@@ -52,7 +52,7 @@ JackMessageBuffer::~JackMessageBuffer()
jack_info("no message buffer overruns"); jack_info("no message buffer overruns");
} }
fThread->SetStatus(JackThread::kIdle); fThread->SetStatus(JackThread::kIdle);
fSignal->SignalAll();
fSignal->Signal();
fThread->Stop(); fThread->Stop();
Flush(); Flush();
delete fThread; delete fThread;


+ 7
- 0
common/JackProcessSync.h View File

@@ -70,6 +70,13 @@ class JackProcessSync : public JackSyncInterface
bool TimedWait(long usec); bool TimedWait(long usec);
void Wait(); void Wait();
void Signal()
{
pthread_mutex_lock(&fLock);
pthread_cond_signal(&fCond);
pthread_mutex_unlock(&fLock);
}
void SignalAll() void SignalAll()
{ {


+ 1
- 0
common/JackSyncInterface.h View File

@@ -41,6 +41,7 @@ class JackSyncInterface
virtual bool Connect(const char* name) = 0; virtual bool Connect(const char* name) = 0;
virtual bool TimedWait(long usec) = 0; virtual bool TimedWait(long usec) = 0;
virtual void Wait() = 0; virtual void Wait() = 0;
virtual void Signal() = 0;
virtual void SignalAll() = 0; virtual void SignalAll() = 0;
virtual void Destroy() = 0; virtual void Destroy() = 0;
}; };


+ 4
- 4
macosx/Jackdmp.xcodeproj/project.pbxproj View File

@@ -762,28 +762,28 @@
isa = PBXContainerItemProxy; isa = PBXContainerItemProxy;
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
proxyType = 1; proxyType = 1;
remoteGlobalIDString = 4B363EDF0DEB091C001F72D9 /* jack_rec Universal */;
remoteGlobalIDString = 4B363EDF0DEB091C001F72D9;
remoteInfo = "jack_rec Universal"; remoteInfo = "jack_rec Universal";
}; };
4B363F240DEB0ABE001F72D9 /* PBXContainerItemProxy */ = { 4B363F240DEB0ABE001F72D9 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy; isa = PBXContainerItemProxy;
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
proxyType = 1; proxyType = 1;
remoteGlobalIDString = 4B363F140DEB0A6A001F72D9 /* jack_monitor_client Universal */;
remoteGlobalIDString = 4B363F140DEB0A6A001F72D9;
remoteInfo = "jack_monitor_client Universal"; remoteInfo = "jack_monitor_client Universal";
}; };
4B363F520DEB0CFE001F72D9 /* PBXContainerItemProxy */ = { 4B363F520DEB0CFE001F72D9 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy; isa = PBXContainerItemProxy;
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
proxyType = 1; proxyType = 1;
remoteGlobalIDString = 4B363F2B0DEB0BD1001F72D9 /* jack_showtime Universal */;
remoteGlobalIDString = 4B363F2B0DEB0BD1001F72D9;
remoteInfo = "jack_showtime Universal"; remoteInfo = "jack_showtime Universal";
}; };
4B363F770DEB0D85001F72D9 /* PBXContainerItemProxy */ = { 4B363F770DEB0D85001F72D9 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy; isa = PBXContainerItemProxy;
containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */;
proxyType = 1; proxyType = 1;
remoteGlobalIDString = 4B363F680DEB0D4E001F72D9 /* jack_impulse_grabber Universal */;
remoteGlobalIDString = 4B363F680DEB0D4E001F72D9;
remoteInfo = "jack_impulse_grabber Universal"; remoteInfo = "jack_impulse_grabber Universal";
}; };
4B5A1BCE0CD1CCC80005BF74 /* PBXContainerItemProxy */ = { 4B5A1BCE0CD1CCC80005BF74 /* PBXContainerItemProxy */ = {


+ 5
- 0
windows/JackWinProcessSync.h View File

@@ -66,6 +66,11 @@ class JackWinProcessSync : public JackSyncInterface
void Wait(); void Wait();
void Signal()
{
SetEvent(fEvent);
}
void SignalAll() void SignalAll()
{ {
SetEvent(fEvent); SetEvent(fEvent);


Loading…
Cancel
Save