00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __JackGlobals__
00021 #define __JackGlobals__
00022
00023 #include "JackPlatformPlug.h"
00024 #include "JackSystemDeps.h"
00025 #include "JackConstants.h"
00026
00027 #ifdef __CLIENTDEBUG__
00028 #include <iostream>
00029 #include <fstream>
00030 #include <string>
00031 #include <time.h>
00032 #endif
00033
00034 namespace Jack
00035 {
00036
00037
00038 struct JackGlobals {
00039
00040 static jack_tls_key fRealTime;
00041 static jack_tls_key fKeyLogFunction;
00042 static JackMutex* fOpenMutex;
00043 static volatile bool fServerRunning;
00044 static JackClient* fClientTable[];
00045 static bool fVerbose;
00046 #ifndef WIN32
00047 static jack_thread_creator_t fJackThreadCreator;
00048 #endif
00049
00050 #ifdef __CLIENTDEBUG__
00051 static std::ofstream* fStream;
00052 static void CheckContext(const char* name);
00053 #endif
00054 };
00055
00056
00057 extern SERVER_EXPORT JackGraphManager* GetGraphManager();
00058 extern SERVER_EXPORT JackEngineControl* GetEngineControl();
00059 extern SERVER_EXPORT JackSynchro* GetSynchroTable();
00060
00061 }
00062
00063 #endif