Browse Source

jack_verbose moved to JackGlobals class.

git-svn-id: http://subversion.jackaudio.org/jack/jack2/trunk/jackmp@3666 0c269be4-1314-0410-8aa9-9f06e86f4224
tags/v1.9.4
sletz 16 years ago
parent
commit
cf33a4d05e
9 changed files with 23 additions and 14 deletions
  1. +1
    -0
      ChangeLog
  2. +1
    -3
      common/JackError.cpp
  3. +0
    -2
      common/JackError.h
  4. +2
    -0
      common/JackGlobals.cpp
  5. +1
    -1
      common/JackGlobals.h
  6. +1
    -1
      common/JackLibClient.cpp
  7. +12
    -5
      common/JackMessageBuffer.cpp
  8. +4
    -1
      common/JackMessageBuffer.h
  9. +1
    -1
      common/JackServer.cpp

+ 1
- 0
ChangeLog View File

@@ -30,6 +30,7 @@ Paul Davis
* Correct JackProcessSync::LockedTimedWait.
* Correct JACK_MESSAGE_SIZE value, particularly in OSX RPC code.
* Now start server channel thread only when backend has been started (so in JackServer::Start). Should solve race conditions at start time.
* jack_verbose moved to JackGlobals class.

2009-10-22 Stephane Letz <letz@grame.fr>


+ 1
- 3
common/JackError.cpp View File

@@ -25,8 +25,6 @@
#include "JackGlobals.h"
#include "JackMessageBuffer.h"

int jack_verbose = 0;

using namespace Jack;

void change_thread_log_function(jack_log_function_t log_function)
@@ -110,7 +108,7 @@ SERVER_EXPORT void jack_info(const char *fmt, ...)

SERVER_EXPORT void jack_log(const char *fmt,...)
{
if (jack_verbose) {
if (JackGlobals::fVerbose) {
va_list ap;
va_start(ap, fmt);
jack_format_and_log(LOG_LEVEL_INFO, "Jack: ", fmt, ap);


+ 0
- 2
common/JackError.h View File

@@ -58,8 +58,6 @@ extern "C"
void jack_log_function(int level, const char *message);
SERVER_EXPORT void set_threaded_log_function();
extern int jack_verbose;

#ifdef __cplusplus
}


+ 2
- 0
common/JackGlobals.cpp View File

@@ -22,6 +22,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
namespace Jack
{

bool JackGlobals::fVerbose = 0;
jack_tls_key JackGlobals::fRealTime;
static bool gKeyRealtimeInitialized = jack_tls_allocate_key(&JackGlobals::fRealTime);



+ 1
- 1
common/JackGlobals.h View File

@@ -34,10 +34,10 @@ struct JackGlobals {
static JackMutex* fOpenMutex;
static bool fServerRunning;
static JackClient* fClientTable[];
static bool fVerbose;
#ifndef WIN32
static jack_thread_creator_t fJackThreadCreator;
#endif

};

// Each "side" server and client will implement this to get the shared graph manager, engine control and inter-process synchro table.


+ 1
- 1
common/JackLibClient.cpp View File

@@ -99,7 +99,7 @@ int JackLibClient::Open(const char* server_name, const char* name, jack_options_
JackLibGlobals::fGlobals->fEngineControl.SetShmIndex(shared_engine, fServerName);
JackLibGlobals::fGlobals->fGraphManager.SetShmIndex(shared_graph, fServerName);
fClientControl.SetShmIndex(shared_client, fServerName);
jack_verbose = GetEngineControl()->fVerbose;
JackGlobals::fVerbose = GetEngineControl()->fVerbose;
} catch (int n) {
jack_error("Map shared memory segments exception %d", n);
goto error;


+ 12
- 5
common/JackMessageBuffer.cpp View File

@@ -29,13 +29,19 @@ namespace Jack
JackMessageBuffer* JackMessageBuffer::fInstance = NULL;

JackMessageBuffer::JackMessageBuffer()
:fThread(this),fInBuffer(0),fOutBuffer(0),fOverruns(0)
:fThread(this),fInBuffer(0),fOutBuffer(0),fOverruns(0),fRunning(false)
{}

JackMessageBuffer::~JackMessageBuffer()
{}
void JackMessageBuffer::Start()
{
fRunning = true;
fThread.StartSync();
}

JackMessageBuffer::~JackMessageBuffer()
void JackMessageBuffer::Stop()
{
if (fOverruns > 0) {
jack_error("WARNING: %d message buffer overruns!", fOverruns);
@@ -49,7 +55,7 @@ JackMessageBuffer::~JackMessageBuffer()
fThread.Stop();
Flush();
}
void JackMessageBuffer::Flush()
{
while (fOutBuffer != fInBuffer) {
@@ -86,12 +92,14 @@ void JackMessageBuffer::Create()
{
if (fInstance == NULL) {
fInstance = new JackMessageBuffer();
fInstance->Start();
}
}

void JackMessageBuffer::Destroy()
{
if (fInstance != NULL) {
fInstance->Stop();
delete fInstance;
fInstance = NULL;
}
@@ -100,8 +108,7 @@ void JackMessageBuffer::Destroy()
void JackMessageBufferAdd(int level, const char *message)
{
if (Jack::JackMessageBuffer::fInstance == NULL) {
/* Unable to print message with realtime safety.
* Complain and print it anyway. */
/* Unable to print message with realtime safety. Complain and print it anyway. */
jack_log_function(LOG_LEVEL_ERROR, "messagebuffer not initialized, skip message");
} else {
Jack::JackMessageBuffer::fInstance->AddMessage(level, message);


+ 4
- 1
common/JackMessageBuffer.h View File

@@ -66,10 +66,13 @@ class JackMessageBuffer : public JackRunnableInterface
bool fRunning;

void Flush();
void Start();
void Stop();
public:
JackMessageBuffer();
JackMessageBuffer();
~JackMessageBuffer();
// JackRunnableInterface interface


+ 1
- 1
common/JackServer.cpp View File

@@ -55,7 +55,7 @@ JackServer::JackServer(bool sync, bool temporary, long timeout, bool rt, long pr
fFreewheel = false;
JackServerGlobals::fInstance = this; // Unique instance
JackServerGlobals::fUserCount = 1; // One user
jack_verbose = verbose;
JackGlobals::fVerbose = verbose;
}

JackServer::~JackServer()


Loading…
Cancel
Save